[PULL 00/46] mostly i386 patches for 2024-06-04

Paolo Bonzini posted 46 patches 5 months, 3 weeks ago
Only 1 patches received!
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
[PULL 00/46] mostly i386 patches for 2024-06-04
Posted by Paolo Bonzini 5 months, 3 weeks ago
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
Re: [PULL 00/46] mostly i386 patches for 2024-06-04
Posted by Richard Henderson 5 months, 3 weeks ago
On 6/5/24 04:02, Paolo Bonzini wrote:
> The following changes since commit 3ab42e46acf867c45bc929fcc37693e327a35a24:
> 
>    Merge tag 'pull-ufs-20240603' ofhttps://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

Applied, thanks.  Please update https://wiki.qemu.org/ChangeLog/9.1 as appropriate.


r~