The following changes since commit f0737158b483e7ec2b2512145aeab888b85cc1f7:

  Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging 
(2025-05-20 10:26:30 -0400)

are available in the Git repository at:

  https://gitlab.com/bonzini/qemu.git tags/for-upstream

for you to fetch changes up to 9bd24d8d2756a0771b6677b02c7f9b603ef6afe9:

  target/i386/tcg/helper-tcg: fix file references in comments (2025-05-28 
19:35:55 +0200)

----------------------------------------------------------------
* target/i386/kvm: Intel TDX support
* target/i386/emulate: more lflags cleanups
* meson: remove need for explicit listing of dependencies in hw_common_arch and
  target_common_arch
* rust: small fixes
* hpet: Reorganize register decoding to be more similar to Rust code
* target/i386: fixes for AMD models
* target/i386: new EPYC-Turin CPU model

----------------------------------------------------------------
Babu Moger (6):
      target/i386: Update EPYC CPU model for Cache property, RAS, SVM feature 
bits
      target/i386: Update EPYC-Rome CPU model for Cache property, RAS, SVM 
feature bits
      target/i386: Update EPYC-Milan CPU model for Cache property, RAS, SVM 
feature bits
      target/i386: Add couple of feature bits in CPUID_Fn80000021_EAX
      target/i386: Update EPYC-Genoa for Cache property, perfmon-v2, RAS and 
SVM feature bits
      target/i386: Add support for EPYC-Turin model

Chao Peng (1):
      i386/tdx: load TDVF for TD guest

Fiona Ebner (1):
      target/i386/tcg/helper-tcg: fix file references in comments

Isaku Yamahata (5):
      i386/tdx: Make sept_ve_disable set by default
      i386/tdx: Support user configurable mrconfigid/mrowner/mrownerconfig
      i386/tdvf: Introduce function to parse TDVF metadata
      i386/tdx: Add TDVF memory via KVM_TDX_INIT_MEM_REGION
      i386/tdx: Don't synchronize guest tsc for TDs

Lei Wang (1):
      i386: Remove unused parameter "uint32_t bit" in feature_word_description()

Paolo Bonzini (4):
      rust: hpet: rename hpet module to "device"
      target/i386/emulate: more lflags cleanups
      rocker: do not pollute the namespace
      rust: make declaration of dependent crates more consistent

Pierrick Bouvier (7):
      meson: build target libraries with common dependencies
      hw/arm: remove explicit dependencies listed
      target/arm: remove explicit dependencies listed
      meson: apply target config for picking files from lib{system, user}
      meson: merge lib{system, user}_ss with {system, user}_ss
      meson: remove lib{system, user}_ss aliases
      meson: merge hw_common_arch in target_common_system_arch

Xiaoyao Li (49):
      i386: Introduce tdx-guest object
      i386/tdx: Implement tdx_kvm_type() for TDX
      i386/tdx: Implement tdx_kvm_init() to initialize TDX VM context
      i386/tdx: Get tdx_capabilities via KVM_TDX_CAPABILITIES
      i386/tdx: Introduce is_tdx_vm() helper and cache tdx_guest object
      kvm: Introduce kvm_arch_pre_create_vcpu()
      i386/tdx: Initialize TDX before creating TD vcpus
      i386/tdx: Add property sept-ve-disable for tdx-guest object
      i386/tdx: Wire CPU features up with attributes of TD guest
      i386/tdx: Validate TD attributes
      i386/tdx: Set APIC bus rate to match with what TDX module enforces
      i386/tdx: Implement user specified tsc frequency
      i386/tdx: Parse TDVF metadata for TDX VM
      i386/tdx: Don't initialize pc.rom for TDX VMs
      i386/tdx: Track mem_ptr for each firmware entry of TDVF
      i386/tdx: Track RAM entries for TDX VM
      headers: Add definitions from UEFI spec for volumes, resources, etc...
      i386/tdx: Setup the TD HOB list
      i386/tdx: Call KVM_TDX_INIT_VCPU to initialize TDX vcpu
      i386/tdx: Finalize TDX VM
      i386/tdx: Enable user exit on KVM_HC_MAP_GPA_RANGE
      i386/tdx: Handle KVM_SYSTEM_EVENT_TDX_FATAL
      i386/tdx: Wire TDX_REPORT_FATAL_ERROR with GuestPanic facility
      kvm: Check KVM_CAP_MAX_VCPUS at vm level
      i386/cpu: introduce x86_confidential_guest_cpu_instance_init()
      i386/tdx: implement tdx_cpu_instance_init()
      i386/cpu: Introduce enable_cpuid_0x1f to force exposing CPUID 0x1f
      i386/tdx: Force exposing CPUID 0x1f
      i386/tdx: Set kvm_readonly_mem_enabled to false for TDX VM
      i386/tdx: Disable SMM for TDX VMs
      i386/tdx: Disable PIC for TDX VMs
      i386/tdx: Set and check kernel_irqchip mode for TDX
      i386/tdx: Only configure MSR_IA32_UCODE_REV in kvm_init_msrs() for TDs
      i386/apic: Skip kvm_apic_put() for TDX
      cpu: Don't set vcpu_dirty when guest_state_protected
      i386/cgs: Rename *mask_cpuid_features() to *adjust_cpuid_features()
      i386/tdx: Implement adjust_cpuid_features() for TDX
      i386/tdx: Add TDX fixed1 bits to supported CPUIDs
      i386/tdx: Add supported CPUID bits related to TD Attributes
      i386/tdx: Add supported CPUID bits relates to XFAM
      i386/tdx: Add XFD to supported bit of TDX
      i386/tdx: Define supported KVM features for TDX
      i386/cgs: Introduce x86_confidential_guest_check_features()
      target/i386: Print CPUID subleaf info for unsupported feature
      i386/tdx: Fetch and validate CPUID of TD guest
      i386/tdx: Don't treat SYSCALL as unavailable
      i386/tdx: Make invtsc default on
      i386/tdx: Validate phys_bits against host value
      docs: Add TDX documentation

Zhao Liu (3):
      hw/timer/hpet: Reorganize register decoding
      rust: Fix Zhao's email address
      rust: Fix the typos in doc

 docs/system/confidential-guest-support.rst    |    1 +
 docs/system/i386/tdx.rst                      |  161 +++
 docs/system/target-i386.rst                   |    1 +
 configs/devices/i386-softmmu/default.mak      |    1 +
 meson.build                                   |  122 +--
 qapi/qom.json                                 |   35 +
 qapi/run-state.json                           |   31 +-
 hw/i386/tdvf-hob.h                            |   26 +
 hw/net/rocker/rocker.h                        |   14 +-
 hw/net/rocker/rocker_hw.h                     |   20 +-
 include/hw/i386/tdvf.h                        |   45 +
 include/standard-headers/uefi/uefi.h          |  187 ++++
 include/system/kvm.h                          |    1 +
 target/i386/confidential-guest.h              |   44 +-
 target/i386/cpu.h                             |   44 +
 target/i386/host-cpu.h                        |    1 +
 target/i386/kvm/kvm_i386.h                    |   15 +
 target/i386/kvm/tdx.h                         |   65 ++
 target/i386/tcg/helper-tcg.h                  |    4 +-
 accel/kvm/kvm-all.c                           |   11 +-
 hw/i386/kvm/apic.c                            |    5 +
 hw/i386/pc.c                                  |   29 +-
 hw/i386/pc_sysfw.c                            |    7 +
 hw/i386/tdvf-hob.c                            |  130 +++
 hw/i386/tdvf.c                                |  189 ++++
 hw/i386/x86-common.c                          |    6 +-
 hw/net/rocker/rocker_of_dpa.c                 |   40 +-
 hw/timer/hpet.c                               |  166 ++--
 system/runstate.c                             |   65 ++
 target/arm/kvm.c                              |    5 +
 target/i386/cpu.c                             |  522 +++++++++-
 target/i386/emulate/x86_flags.c               |   16 +-
 target/i386/host-cpu.c                        |    2 +-
 target/i386/kvm/kvm.c                         |  110 ++-
 target/i386/kvm/tdx-stub.c                    |   20 +
 target/i386/kvm/tdx.c                         | 1289 +++++++++++++++++++++++++
 target/i386/sev.c                             |   12 +-
 target/loongarch/kvm/kvm.c                    |    4 +
 target/mips/kvm.c                             |    5 +
 target/ppc/kvm.c                              |    5 +
 target/riscv/kvm/kvm-cpu.c                    |    5 +
 target/s390x/kvm/kvm.c                        |    5 +
 accel/tcg/meson.build                         |    8 +-
 gdbstub/meson.build                           |    4 +-
 hw/arm/meson.build                            |    4 +-
 hw/core/meson.build                           |    4 +-
 hw/i386/Kconfig                               |    6 +
 hw/i386/meson.build                           |    1 +
 plugins/meson.build                           |    4 +-
 rust/hw/char/pl011/meson.build                |   12 +-
 rust/hw/char/pl011/src/device.rs              |    4 +-
 rust/hw/timer/hpet/src/{hpet.rs => device.rs} |    2 +-
 rust/hw/timer/hpet/src/fw_cfg.rs              |    2 +-
 rust/hw/timer/hpet/src/lib.rs                 |    4 +-
 rust/meson.build                              |   16 +
 rust/qemu-api-macros/meson.build              |   14 +-
 rust/qemu-api/meson.build                     |    4 +-
 rust/qemu-api/src/bitops.rs                   |    2 +-
 rust/qemu-api/src/qom.rs                      |    4 +-
 rust/qemu-api/src/timer.rs                    |    2 +-
 rust/qemu-api/src/vmstate.rs                  |    2 +-
 rust/qemu-api/tests/vmstate_tests.rs          |    2 +-
 system/meson.build                            |    2 +-
 target/arm/meson.build                        |    2 +-
 target/i386/kvm/meson.build                   |    2 +
 tcg/meson.build                               |    4 +-
 66 files changed, 3231 insertions(+), 346 deletions(-)
 create mode 100644 docs/system/i386/tdx.rst
 create mode 100644 hw/i386/tdvf-hob.h
 create mode 100644 include/hw/i386/tdvf.h
 create mode 100644 include/standard-headers/uefi/uefi.h
 create mode 100644 target/i386/kvm/tdx.h
 create mode 100644 hw/i386/tdvf-hob.c
 create mode 100644 hw/i386/tdvf.c
 create mode 100644 target/i386/kvm/tdx-stub.c
 create mode 100644 target/i386/kvm/tdx.c
 rename rust/hw/timer/hpet/src/{hpet.rs => device.rs} (99%)
-- 
2.49.0


Reply via email to