On Tue, Jul 14, 2026 at 08:15:24AM +0530, Ani Sinha wrote: > VM launch update is a mechanism where the virtual machines can use IGVM > file bundle to boot into a trusted execution environment without > having to depend on a untrusted party to provide the IGVM bundle or firmware > image. This is particularly useful for confidential virtual machines that > are deployed in the cloud where the tenant and the cloud provider are two > different entities. In this scenario, virtual machines can bring their own > trusted IGVM file containing a trusted firmware image > bundled as a part of their filesystem and then use this hypervisor interface > to update to a trusted and deterministic boot state. > This also allows the guests to have a consistent measurements on the firmware > image. > > Currently, this mechanism only works if the VM was started with IGVM in the > first place. > > This change introduces support for the fw-cfg based hypervisor interface > and the corresponding device. The interface is made generic > enough so that guests are free to use their own ABI to pass required > information between initial and trusted execution contexts (where they are > running their own trusted boot state) without the hypervisor getting > involved in between. > > Currently, this device is only supported for x86 machines. Presence of > IGVM host libraries is also required for parsing IGVM files. Hence, the device > cannot be initialized for other machine types or hosts where IGVM support > is not present. Trying to initialize it for arm for example will lead to > failure: > > $ ./qemu-system-arm -device vm-launch-update -machine virt > qemu-system-arm: -device vmfwupdate: This machine does not support > vm-launch-update device > > Functional and qtests will be added in a subsequent patch. > > CC: Alex Graf <[email protected]> > CC: Gerd Hoffman <[email protected]>
Reviewed-by: Gerd Hoffmann <[email protected]>
