qemu-cr16/include/system
Roy Hopkins c1d466d267 backends/igvm: Add IGVM loader and configuration
Adds an IGVM loader to QEMU which processes a given IGVM file and
applies the directives within the file to the current guest
configuration.

The IGVM loader can be used to configure both confidential and
non-confidential guests. For confidential guests, the
ConfidentialGuestSupport object for the system is used to encrypt
memory, apply the initial CPU state and perform other confidential guest
operations.

The loader is configured via a new IgvmCfg QOM object which allows the
user to provide a path to the IGVM file to process.

Signed-off-by: Roy Hopkins <roy.hopkins@randomman.co.uk>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Gerd Hoffman <kraxel@redhat.com>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
Link: https://lore.kernel.org/r/ae3a07d8f514d93845a9c16bb155c847cb567b0d.1751554099.git.roy.hopkins@randomman.co.uk
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2025-07-12 15:28:21 +02:00
..
accel-blocker.h
accel-ops.h accel/system: Convert pre_resume() from AccelOpsClass to AccelClass 2025-07-04 15:37:07 +02:00
address-spaces.h include/system: Move exec/address-spaces.h to system/address-spaces.h 2025-04-23 14:08:21 -07:00
arch_init.h system: Replace arch_type global by qemu_arch_available() helper 2025-03-11 20:03:26 +01:00
balloon.h
block-backend-common.h
block-backend-global-state.h block: Remove unused blk_op_is_blocked() 2025-03-11 15:49:14 +01:00
block-backend-io.h block: Improve blk_get_attached_dev_id() docstring 2025-02-06 13:59:00 +01:00
block-backend.h
block-ram-registrar.h
blockdev.h
confidential-guest-support.h backends/confidential-guest-support: Add functions to support IGVM 2025-07-12 15:28:21 +02:00
cpu-throttle.h
cpu-timers-internal.h
cpu-timers.h include/exec: Split out icount.h 2025-04-23 14:08:44 -07:00
cpus.h accel/dummy: Extract 'dummy-cpus.h' header from 'system/cpus.h' 2025-07-04 14:43:46 +02:00
cryptodev-vhost-user.h
cryptodev-vhost.h
cryptodev.h
device_tree.h hw: Centralize handling of -machine dumpdtb option 2025-02-24 15:03:42 +00:00
dirtylimit.h
dirtyrate.h
dma.h include/system: Move exec/address-spaces.h to system/address-spaces.h 2025-04-23 14:08:21 -07:00
dump-arch.h
dump.h
event-loop-base.h
host_iommu_device.h vfio/iommufd: Save vendor specific device info 2025-06-05 10:40:38 +02:00
hostmem.h include/system: Move exec/memory.h to system/memory.h 2025-04-23 14:08:21 -07:00
hvf.h accel/hvf: Restrict internal declarations 2025-07-04 14:43:45 +02:00
hvf_int.h accel/hvf: Replace @dirty field by generic CPUState::vcpu_dirty field 2025-07-04 14:43:46 +02:00
hw_accel.h accel/system: Document cpu_synchronize_state_post_init/reset() 2025-07-04 14:43:46 +02:00
igvm-cfg.h backends/igvm: Add IGVM loader and configuration 2025-07-12 15:28:21 +02:00
iommufd.h vfio/iommufd: register container for cpr 2025-07-03 13:42:28 +02:00
ioport.h include/system: Move exec/ioport.h to system/ioport.h 2025-04-23 14:08:21 -07:00
iothread.h
kvm.h Accelerators patches 2025-07-04 08:58:49 -04:00
kvm_int.h include/system: Move exec/memory.h to system/memory.h 2025-04-23 14:08:21 -07:00
kvm_xen.h
memory.h memory: Unify the definiton of ReplayRamPopulate() and ReplayRamDiscard() 2025-06-23 16:03:59 -04:00
memory_mapping.h
numa.h
nvmm.h accel/nvmm: Expose nvmm_enabled() to common code 2025-07-04 14:43:46 +02:00
os-posix.h os: add an ability to lock memory on_fault 2025-02-12 11:36:01 -05:00
os-wasm.h include/qemu/osdep.h: Add Emscripten-specific OS dependencies 2025-05-06 16:02:04 +02:00
os-win32.h cleanup: Drop pointless return at end of function 2025-04-24 09:33:42 +02:00
qtest.h include/system: Remove ifndef CONFIG_USER_ONLY in qtest.h 2025-04-23 14:08:44 -07:00
ram_addr.h include: Remove 'exec/exec-all.h' 2025-04-30 12:45:05 -07:00
ramblock.h physmem: Support coordinated discarding of RAM with guest_memfd 2025-06-23 16:03:59 -04:00
replay.h meson: Only allow CONFIG_USER_ONLY from certain source sets 2025-04-23 14:08:44 -07:00
reset.h
rng-random.h
rng.h
rtc.h
runstate-action.h
runstate.h system/runstate: add VM state change cb with return value 2025-05-14 05:39:14 -04:00
seccomp.h
spdm-socket.h
stats.h
system.h overcommit: introduce mem-lock=on-fault 2025-02-12 11:36:13 -05:00
tcg.h tcg: Move qemu_tcg_mttcg_enabled() to 'system/tcg.h' 2025-04-23 15:07:32 -07:00
tpm.h
tpm_backend.h
tpm_util.h
vhost-user-backend.h vhost-user: return failure if backend crash when live migration 2025-05-14 05:39:15 -04:00
watchdog.h
whpx.h accel/whpx: Expose whpx_enabled() to common code 2025-07-04 14:43:46 +02:00
xen-mapcache.h system/xen: remove inline stubs 2025-04-23 13:52:37 -07:00
xen.h meson: Only allow CONFIG_USER_ONLY from certain source sets 2025-04-23 14:08:44 -07:00