The following changes since commit 3ab42e46acf867c45bc929fcc37693e327a35a24:
Merge tag 'pull-ufs-20240603' of https://gitlab.com/jeuk20.kim/qemu into staging (2024-06-03 08:18:14 -0500)
are available in the Git repository at:
https://gitlab.com/bonzini/qemu.git tags/for-upstream
for you to fetch changes up to fc7a69e177e4ba26d11fcf47b853f85115b35a11:
hw/i386: Add support for loading BIOS using guest_memfd (2024-06-04 16:44:23 +0200)
----------------------------------------------------------------
* virtio-blk: remove SCSI passthrough functionality
* require x86-64-v2 baseline ISA
* SEV-SNP host support
* fix xsave.flat with TCG
* fixes for CPUID checks done by TCG
----------------------------------------------------------------
Brijesh Singh (6):
i386/sev: Introduce 'sev-snp-guest' object
i386/sev: Add the SNP launch start context
i386/sev: Add handling to encrypt/finalize guest launch data
hw/i386/sev: Add function to get SEV metadata from OVMF header
i386/sev: Add support for populating OVMF metadata pages
hw/i386/sev: Add support to encrypt BIOS when SEV-SNP is enabled
Dov Murik (3):
i386/sev: Extract build_kernel_loader_hashes
i386/sev: Reorder struct declarations
i386/sev: Allow measured direct kernel boot on SNP
Michael Roth (11):
i386/sev: Introduce "sev-common" type to encapsulate common SEV state
i386/sev: Add a sev_snp_enabled() helper
i386/cpu: Set SEV-SNP CPUID bit when SNP enabled
i386/sev: Don't return launch measurements for SEV-SNP guests
i386/sev: Update query-sev QAPI format to handle SEV-SNP
i386/sev: Set CPU state to protected once SNP guest payload is finalized
i386/sev: Add support for SNP CPUID validation
i386/kvm: Add KVM_EXIT_HYPERCALL handling for KVM_HC_MAP_GPA_RANGE
i386/sev: Enable KVM_HC_MAP_GPA_RANGE hcall for SNP guests
hw/i386/sev: Use guest_memfd for legacy ROMs
hw/i386: Add support for loading BIOS using guest_memfd
Pankaj Gupta (7):
linux-headers: Update to current kvm/next
i386/sev: Replace error_report with error_setg
i386/sev: Move sev_launch_update to separate class method
i386/sev: Move sev_launch_finish to separate class method
i386/sev: Add sev_kvm_init() override for SEV class
i386/sev: Add snp_kvm_init() override for SNP class
i386/sev: Invoke launch_updata_data() for SNP class
Paolo Bonzini (15):
docs, tests: do not specify scsi=off
virtio-blk: remove SCSI passthrough functionality
host/i386: nothing looks at CPUINFO_SSE4
meson: assume x86-64-v2 baseline ISA
host/i386: assume presence of CMOV
host/i386: assume presence of SSE2
host/i386: assume presence of SSSE3
host/i386: assume presence of POPCNT
target/i386: fix xsave.flat from kvm-unit-tests
update-linux-headers: fix forwarding to asm-generic headers
update-linux-headers: move pvpanic.h to correct directory
update-linux-headers: import linux/kvm_para.h header
machine: allow early use of machine_require_guest_memfd
i386/sev: Add a class method to determine KVM VM type for SNP guests
i386/sev: Invoke launch_updata_data() for SEV class
Xiaoyao Li (1):
memory: Introduce memory_region_init_ram_guest_memfd()
Xinyu Li (2):
target/i386: fix SSE and SSE2 feature check
target/i386: fix memory opsize for Mov to/from Seg
Zhao Liu (1):
target/i386/tcg: Fix RDPID feature check
docs/about/deprecated.rst | 10 -
docs/about/removed-features.rst | 8 +
docs/pci_expander_bridge.txt | 2 +-
docs/specs/tpm.rst | 2 +-
docs/system/i386/amd-memory-encryption.rst | 70 +-
meson.build | 10 +-
qapi/misc-target.json | 72 +-
qapi/qom.json | 98 +-
host/include/i386/host/cpuinfo.h | 4 -
include/exec/confidential-guest-support.h | 5 +
include/exec/memory.h | 6 +
include/hw/boards.h | 1 -
include/hw/i386/pc.h | 28 +
include/hw/i386/x86.h | 2 +-
include/standard-headers/linux/kvm_para.h | 38 +
include/standard-headers/{linux => misc}/pvpanic.h | 0
linux-headers/asm-loongarch/kvm.h | 4 +
linux-headers/asm-riscv/kvm.h | 1 +
linux-headers/asm-x86/kvm.h | 52 +-
linux-headers/asm-x86/kvm_para.h | 1 +
linux-headers/linux/kvm_para.h | 2 +
linux-headers/linux/vhost.h | 15 +-
target/i386/kvm/kvm_i386.h | 1 +
target/i386/sev.h | 13 +-
target/i386/tcg/decode-new.h | 3 +
tcg/i386/tcg-target.h | 5 +-
hw/block/virtio-blk.c | 166 +-
hw/core/machine.c | 4 +-
hw/i386/pc.c | 14 +-
hw/i386/pc_sysfw.c | 35 +-
hw/i386/x86-common.c | 19 +-
hw/misc/pvpanic-isa.c | 2 +-
hw/misc/pvpanic-pci.c | 2 +-
hw/misc/pvpanic.c | 2 +-
system/memory.c | 24 +
target/i386/cpu.c | 1 +
target/i386/kvm/kvm.c | 56 +
target/i386/sev-sysemu-stub.c | 6 +-
target/i386/sev.c | 1581 +++++++++++++++-----
target/i386/tcg/fpu_helper.c | 5 +
target/i386/tcg/translate.c | 2 +-
util/bufferiszero.c | 4 +-
util/cpuinfo-i386.c | 8 +-
target/i386/tcg/decode-new.c.inc | 17 +-
tcg/i386/tcg-target.c.inc | 15 +-
scripts/update-linux-headers.sh | 37 +-
target/i386/kvm/trace-events | 1 +
target/i386/trace-events | 3 +
tests/avocado/intel_iommu.py | 2 +-
tests/avocado/smmu.py | 2 +-
tests/avocado/tuxrun_baselines.py | 2 +-
51 files changed, 1849 insertions(+), 614 deletions(-)
create mode 100644 include/standard-headers/linux/kvm_para.h
rename include/standard-headers/{linux => misc}/pvpanic.h (100%)
create mode 100644 linux-headers/asm-x86/kvm_para.h
create mode 100644 linux-headers/linux/kvm_para.h
--
2.45.1