qemu/hw/i386
Michael Roth fc7a69e177 hw/i386: Add support for loading BIOS using guest_memfd
When guest_memfd is enabled, the BIOS is generally part of the initial
encrypted guest image and will be accessed as private guest memory. Add
the necessary changes to set up the associated RAM region with a
guest_memfd backend to allow for this.

Current support centers around using -bios to load the BIOS data.
Support for loading the BIOS via pflash requires additional enablement
since those interfaces rely on the use of ROM memory regions which make
use of the KVM_MEM_READONLY memslot flag, which is not supported for
guest_memfd-backed memslots.

Signed-off-by: Michael Roth <michael.roth@amd.com>
Signed-off-by: Pankaj Gupta <pankaj.gupta@amd.com>
Message-ID: <20240530111643.1091816-29-pankaj.gupta@amd.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2024-06-05 11:01:06 +02:00
..
kvm hw/xen_evtchn: Initialize flush_kvm_routes 2024-04-02 16:15:07 +02:00
xen memory: Add Error** argument to the global_dirty_log routines 2024-04-23 18:36:01 -04:00
acpi-build.c hw/i386/acpi-build: Add support for SRAT Generic Initiator structures 2024-03-12 17:56:55 -04:00
acpi-build.h
acpi-common.c hw/i386/acpi: Set PCAT_COMPAT bit only when pic is not disabled 2024-04-23 17:35:25 +02:00
acpi-common.h hw/i386/acpi: Declare pc_madt_cpu_entry() in 'acpi-common.h' 2024-02-20 20:34:21 +03:00
acpi-microvm.c hw/i386/acpi-microvm.c: Use common function to add virtio in DSDT 2024-01-10 18:47:46 +10:00
acpi-microvm.h
amd_iommu-stub.c amd_iommu: report x2APIC support to the operating system 2024-02-14 06:09:32 -05:00
amd_iommu.c hw/i386/pc: Rename "bus" attribute to "pcibus" 2024-02-27 09:37:30 +01:00
amd_iommu.h amd_iommu: report x2APIC support to the operating system 2024-02-14 06:09:32 -05:00
e820_memory_layout.c
e820_memory_layout.h
fw_cfg.c i386: correctly select code in hw/i386 that depends on other components 2024-05-10 15:45:15 +02:00
fw_cfg.h smbios: get rid of global smbios_ep_type 2024-03-18 08:42:45 -04:00
intel_iommu_internal.h intel-iommu: Report interrupt remapping faults, fix return value 2023-10-22 05:18:17 -04:00
intel_iommu.c hw/i386/pc: Rename "bus" attribute to "pcibus" 2024-02-27 09:37:30 +01:00
Kconfig kconfig: express dependency of individual boards on libfdt 2024-05-10 15:45:15 +02:00
meson.build hw/i386: move rtc-reset-reinjection command out of hw/rtc 2024-05-10 15:45:15 +02:00
microvm-dt.c
microvm-dt.h
microvm.c hw/i386: Have x86_bios_rom_init() take X86MachineState rather than MachineState 2024-05-08 19:43:23 +02:00
monitor.c hw/i386: move rtc-reset-reinjection command out of hw/rtc 2024-05-10 15:45:15 +02:00
multiboot.c
multiboot.h
pc_piix.c hw/i386/pc_sysfw: Alias rather than copy isa-bios region 2024-05-22 15:53:30 +02:00
pc_q35.c hw/i386/pc_sysfw: Alias rather than copy isa-bios region 2024-05-22 15:53:30 +02:00
pc_sysfw_ovmf-stubs.c
pc_sysfw_ovmf.c
pc_sysfw.c hw/i386/sev: Use guest_memfd for legacy ROMs 2024-06-05 11:01:06 +02:00
pc.c hw/i386/sev: Use guest_memfd for legacy ROMs 2024-06-05 11:01:06 +02:00
port92.c hw/i386/port92: Add missing 'hw/isa/isa.h' header 2024-02-20 20:34:21 +03:00
sgx-epc.c
sgx-stub.c target/i386: the sgx_epc_get_section stub is reachable 2023-12-31 09:11:27 +01:00
sgx.c hw/i386/sgx: Use QDev API 2024-02-27 09:37:30 +01:00
trace-events vmmouse: replace DPRINTF with tracing 2023-09-12 10:37:01 +04:00
trace.h
vapic.c hw/i386: Rename kvmvapic.c -> vapic.c 2024-03-09 18:51:45 +01:00
vmmouse.c hw/i386: Constify VMState 2023-12-29 11:17:30 +11:00
vmport.c
x86-common.c hw/i386: Add support for loading BIOS using guest_memfd 2024-06-05 11:01:06 +02:00
x86-cpu.c hw/i386: split x86.c in multiple parts 2024-05-10 15:45:15 +02:00
x86-iommu-stub.c
x86-iommu.c hw/i386/pc: Rename "bus" attribute to "pcibus" 2024-02-27 09:37:30 +01:00
x86.c i386: Support module_id in X86CPUTopoIDs 2024-05-22 19:43:29 +02:00