All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 00/65] QEMU Guest memfd + QEMU TDX support
@ 2024-02-29  6:36 Xiaoyao Li
  2024-02-29  6:36 ` [PATCH v5 01/65] linux-headers: Update to Linux v6.8-rc5 Xiaoyao Li
                   ` (64 more replies)
  0 siblings, 65 replies; 124+ messages in thread
From: Xiaoyao Li @ 2024-02-29  6:36 UTC (permalink / raw)
  To: Paolo Bonzini, David Hildenbrand, Igor Mammedov, Eduardo Habkost,
	Marcel Apfelbaum, Philippe Mathieu-Daudé, Yanan Wang,
	Michael S. Tsirkin, Richard Henderson, Ani Sinha, Peter Xu,
	Cornelia Huck, Daniel P. Berrangé, Eric Blake,
	Markus Armbruster, Marcelo Tosatti
  Cc: kvm, qemu-devel, Michael Roth, Claudio Fontana, Gerd Hoffmann,
	Isaku Yamahata, Chenyi Qiang, xiaoyao.li

This v5 series matches with latest KVM v19 series:
https://lore.kernel.org/all/cover.1708933498.git.isaku.yamahata@intel.com/

This series is also available in github:
https://github.com/intel/qemu-tdx/tree/tdx-qemu-upstream-v5

It's based on one series that refacotrs cgs specific KVM functions:
https://lore.kernel.org/qemu-devel/20240229060038.606591-1-xiaoyao.li@intel.com/

===
Patches 1 - 10 add support of guest memfd into QEMU, associating it with
RAMBlock. For the VM types that require private memory (see
tdx_kvm_init() in patch 14), QEMU will automatically create guest memfd
for each RAM backend.

Follwoing patches 11 to 65, enables TDX support to allow creating and
booting a TD (TDX VM) with QEMU.

== Limitation and future work ==
- Readonly memslot

  TDX only support readonly (write protection) memslot for shared memory, but
  not for private memory. For simplicity, just mark readonly memslot not
  supported entirely for TDX.

- CPU model

  We cannot create a TD with arbitrary CPU model like what for non-TDX VMs,
  because only a subset of features can be configured for TD.

  - It's recommended to use '-cpu host' to create TD;
  - '+feature/-feature' might not work as expected;

  future work: To introduce specific CPU model for TDs and enhance ±features
               for TDs.

- gdb suppport

  gdb support to debug a TD of off-debug mode is future work.

===
Changes in v5:
guest memfd part:
- remove RAM_DEFAULT_PRIVATE that RAM_GUEST_MEMFD can serve its purpose.
  just make all the RAM that has guest memfd backend private by default;
- collect Reviewed-by from David;

TDX part:
- switch to use KVM_MEMORY_MAPPING to initialize TDVF into its private
  memory; (required by KVM v19 series);
- Add patch (28) to disable PMU for TD guest;
- various QAPI doc comment refine; (Thanks to Markus!)
- update Documentation to add section TD atttestation;

v4:
https://lore.kernel.org/qemu-devel/20240125032328.2522472-1-xiaoyao.li@intel.com/

Main changes in v4:
guest memfd part:
 - Drop the patch that supports KVM_GUEST_MEMFD_ALLOW_HUGEPAGE flag
   because KVM side leaves it as future work;
 - send patch "physmem: replace function name with __func__ in
   ram_block_discard_range()" separately;
 - drop ram_block_convert_range() and open code it instead.
 - move the supported attribute bit check into
   kvm_set_memory_attributes() (per request from Wei)
 - Clarify more for the desgin consideration in the commit messages

TDX part:
 - Re-implement get-quote support by introduing TdxQuoteGenerator object
   and make the socket communication non-blocking; (per Daniel)
 - Various code and doc refinement;

v3:
https://lore.kernel.org/qemu-devel/20231115071519.2864957-1-xiaoyao.li@intel.com/

Main changes in v3:
gmem memfd part: 
 - Since KVM side renamed gmem to guest_memfd in the uapi, this version
   renames it accordingly;
 - Drop the 'private' property of memory backend. (see comment[1])
   Now QEMU decides whether need to create guest memfd based on specific
   vm type (or specific VM implementation, please see patch *X* and *Y*);
 - Drop sw_protected_vm implementation;

TDX part:
 - improve the error report in various patches by utilizing 'errp';
 - drop the vm-type interface;
 - rename __tdx_ioctl() to tdx_ioctl_internal();
 - refine the description of 'sept-ve-disable' in qom.json;
 - use base64 for mrconfigif/mrowner/mrownerconfig instread of hex-string;
 - use type SocketAddress for quote-generation-service;

[1] https://lore.kernel.org/qemu-devel/a1e34896-c46d-c87c-0fda-971bbf3dcfbd@redhat.com/

Chao Peng (3):
  kvm: Enable KVM_SET_USER_MEMORY_REGION2 for memslot
  kvm: handle KVM_EXIT_MEMORY_FAULT
  i386/tdx: load TDVF for TD guest

Isaku Yamahata (14):
  trace/kvm: Add trace for page convertion between shared and private
  i386/tdx: Make sept_ve_disable set by default
  i386/tdx: Support user configurable mrconfigid/mrowner/mrownerconfig
  kvm/tdx: Don't complain when converting vMMIO region to shared
  kvm/tdx: Ignore memory conversion to shared of unassigned region
  i386/tdvf: Introduce function to parse TDVF metadata
  i386/tdx: Populate TDVF private memory via KVM_MEMORY_MAPPING
  i386/tdx: handle TDG.VP.VMCALL<SetupEventNotifyInterrupt>
  i386/tdx: handle TDG.VP.VMCALL<GetQuote>
  i386/tdx: handle TDG.VP.VMCALL<MapGPA> hypercall
  pci-host/q35: Move PAM initialization above SMRAM initialization
  q35: Introduce smm_ranges property for q35-pci-host
  hw/i386: add option to forcibly report edge trigger in acpi tables
  i386/tdx: Don't synchronize guest tsc for TDs

Sean Christopherson (2):
  i386/kvm: Move architectural CPUID leaf generation to separate helper
  i386/tdx: Don't get/put guest state for TDX VMs

Xiaoyao Li (46):
  linux-headers: Update to Linux v6.8-rc5
  RAMBlock: Add support of KVM private guest memfd
  HostMem: Add mechanism to opt in kvm guest memfd via MachineState
  trace/kvm: Split address space and slot id in
    trace_kvm_set_user_memory()
  kvm: Introduce support for memory_attributes
  physmem: Introduce ram_block_discard_guest_memfd_range()
  kvm/memory: Make memory type private by default if it has guest memfd
    backend
  *** HACK *** linux-headers: Update headers to pull in TDX API changes
  i386: Introduce tdx-guest object
  target/i386: Implement mc->kvm_type() to get VM type
  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
  i386/tdx: Adjust the supported CPUID based on TDX restrictions
  i386/tdx: Make Intel-PT unsupported for TD guest
  i386/tdx: Update tdx_cpuid_lookup[].tdx_fixed0/1 by
    tdx_caps.cpuid_config[]
  i386/tdx: Integrate tdx_caps->xfam_fixed0/1 into tdx_cpuid_lookup
  i386/tdx: Integrate tdx_caps->attrs_fixed0/1 to tdx_cpuid_lookup
  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: Disable pmu for TD guest
  i386/tdx: Validate TD attributes
  i386/tdx: Implement user specified tsc frequency
  i386/tdx: Set kvm_readonly_mem_enabled to false for TDX VM
  memory: Introduce memory_region_init_ram_guest_memfd()
  i386/tdx: Parse TDVF metadata for TDX VM
  i386/tdx: Skip BIOS shadowing setup
  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: Handle TDG.VP.VMCALL<REPORT_FATAL_ERROR>
  i386/tdx: Wire TDX_REPORT_FATAL_ERROR with GuestPanic facility
  i386/tdx: Disable SMM for TDX VMs
  i386/tdx: Disable PIC for TDX VMs
  i386/tdx: Don't allow system reset for TDX VMs
  i386/tdx: LMCE is not supported for TDX
  hw/i386: add eoi_intercept_unsupported member to X86MachineState
  i386/tdx: Only configure MSR_IA32_UCODE_REV in kvm_init_msrs() for TDs
  i386/tdx: Skip kvm_put_apicbase() for TDs
  docs: Add TDX documentation

 accel/kvm/kvm-all.c                           |  278 +++-
 accel/kvm/trace-events                        |    3 +-
 accel/stubs/kvm-stub.c                        |    5 +
 backends/hostmem-file.c                       |    1 +
 backends/hostmem-memfd.c                      |    1 +
 backends/hostmem-ram.c                        |    1 +
 backends/hostmem.c                            |    1 +
 configs/devices/i386-softmmu/default.mak      |    1 +
 docs/system/confidential-guest-support.rst    |    1 +
 docs/system/i386/tdx.rst                      |  143 ++
 docs/system/target-i386.rst                   |    1 +
 hw/core/machine.c                             |    5 +
 hw/i386/Kconfig                               |    6 +
 hw/i386/acpi-build.c                          |   99 +-
 hw/i386/acpi-common.c                         |   45 +-
 hw/i386/meson.build                           |    1 +
 hw/i386/pc.c                                  |   21 +-
 hw/i386/pc_q35.c                              |    2 +
 hw/i386/pc_sysfw.c                            |    7 +
 hw/i386/tdvf-hob.c                            |  147 ++
 hw/i386/tdvf-hob.h                            |   24 +
 hw/i386/tdvf.c                                |  200 +++
 hw/i386/x86.c                                 |   51 +-
 hw/pci-host/q35.c                             |   61 +-
 include/exec/cpu-common.h                     |    2 +
 include/exec/memory.h                         |   26 +-
 include/exec/ram_addr.h                       |    2 +-
 include/exec/ramblock.h                       |    1 +
 include/hw/boards.h                           |    2 +
 include/hw/i386/pc.h                          |    1 +
 include/hw/i386/tdvf.h                        |   58 +
 include/hw/i386/x86.h                         |    2 +
 include/hw/pci-host/q35.h                     |    1 +
 include/standard-headers/drm/drm_fourcc.h     |   10 +-
 include/standard-headers/linux/ethtool.h      |   41 +-
 .../standard-headers/linux/virtio_config.h    |    8 +-
 include/standard-headers/linux/virtio_pci.h   |   68 +
 include/standard-headers/linux/virtio_pmem.h  |    7 +
 include/standard-headers/uefi/uefi.h          |  198 +++
 include/sysemu/hostmem.h                      |    1 +
 include/sysemu/kvm.h                          |    8 +
 include/sysemu/kvm_int.h                      |    2 +
 linux-headers/asm-generic/unistd.h            |   15 +-
 linux-headers/asm-mips/mman.h                 |    2 +-
 linux-headers/asm-mips/unistd_n32.h           |    5 +
 linux-headers/asm-mips/unistd_n64.h           |    5 +
 linux-headers/asm-mips/unistd_o32.h           |    5 +
 linux-headers/asm-powerpc/unistd_32.h         |    5 +
 linux-headers/asm-powerpc/unistd_64.h         |    5 +
 linux-headers/asm-riscv/kvm.h                 |   40 +
 linux-headers/asm-s390/unistd_32.h            |    5 +
 linux-headers/asm-s390/unistd_64.h            |    5 +
 linux-headers/asm-x86/kvm.h                   |   89 ++
 linux-headers/asm-x86/unistd_32.h             |    5 +
 linux-headers/asm-x86/unistd_64.h             |    5 +
 linux-headers/asm-x86/unistd_x32.h            |    5 +
 linux-headers/linux/iommufd.h                 |   79 +
 linux-headers/linux/kvm.h                     |  240 +--
 linux-headers/linux/userfaultfd.h             |   29 +-
 linux-headers/linux/vfio.h                    |    1 +
 qapi/qom.json                                 |   38 +
 qapi/run-state.json                           |   31 +-
 system/memory.c                               |   30 +
 system/physmem.c                              |   47 +-
 system/runstate.c                             |   58 +
 target/i386/cpu-internal.h                    |    9 +
 target/i386/cpu.c                             |   12 -
 target/i386/cpu.h                             |   21 +
 target/i386/kvm/kvm-cpu.c                     |    5 +
 target/i386/kvm/kvm.c                         |  596 ++++---
 target/i386/kvm/kvm_i386.h                    |    6 +
 target/i386/kvm/meson.build                   |    2 +
 target/i386/kvm/tdx-quote-generator.c         |  170 ++
 target/i386/kvm/tdx-quote-generator.h         |   95 ++
 target/i386/kvm/tdx-stub.c                    |   18 +
 target/i386/kvm/tdx.c                         | 1371 +++++++++++++++++
 target/i386/kvm/tdx.h                         |   81 +
 77 files changed, 4180 insertions(+), 498 deletions(-)
 create mode 100644 docs/system/i386/tdx.rst
 create mode 100644 hw/i386/tdvf-hob.c
 create mode 100644 hw/i386/tdvf-hob.h
 create mode 100644 hw/i386/tdvf.c
 create mode 100644 include/hw/i386/tdvf.h
 create mode 100644 include/standard-headers/uefi/uefi.h
 create mode 100644 target/i386/kvm/tdx-quote-generator.c
 create mode 100644 target/i386/kvm/tdx-quote-generator.h
 create mode 100644 target/i386/kvm/tdx-stub.c
 create mode 100644 target/i386/kvm/tdx.c
 create mode 100644 target/i386/kvm/tdx.h

-- 
2.34.1



^ permalink raw reply	[flat|nested] 124+ messages in thread

end of thread, other threads:[~2025-04-08  2:00 UTC | newest]

Thread overview: 124+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-02-29  6:36 [PATCH v5 00/65] QEMU Guest memfd + QEMU TDX support Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 01/65] linux-headers: Update to Linux v6.8-rc5 Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 02/65] RAMBlock: Add support of KVM private guest memfd Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 03/65] HostMem: Add mechanism to opt in kvm guest memfd via MachineState Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 04/65] trace/kvm: Split address space and slot id in trace_kvm_set_user_memory() Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 05/65] kvm: Enable KVM_SET_USER_MEMORY_REGION2 for memslot Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 06/65] kvm: Introduce support for memory_attributes Xiaoyao Li
2024-03-19  2:03   ` Wang, Lei
2024-03-20 12:44     ` Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 07/65] physmem: Introduce ram_block_discard_guest_memfd_range() Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 08/65] kvm: handle KVM_EXIT_MEMORY_FAULT Xiaoyao Li
2024-03-05  9:10   ` Isaku Yamahata
2024-03-07  6:43     ` Xiaoyao Li
2024-03-19  2:14   ` Wang, Lei
2024-03-20 13:49     ` Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 09/65] trace/kvm: Add trace for page convertion between shared and private Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 10/65] kvm/memory: Make memory type private by default if it has guest memfd backend Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 11/65] *** HACK *** linux-headers: Update headers to pull in TDX API changes Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 12/65] i386: Introduce tdx-guest object Xiaoyao Li
2024-02-29  8:19   ` Markus Armbruster
2024-02-29  6:36 ` [PATCH v5 13/65] target/i386: Implement mc->kvm_type() to get VM type Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 14/65] i386/tdx: Implement tdx_kvm_init() to initialize TDX VM context Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 15/65] i386/tdx: Get tdx_capabilities via KVM_TDX_CAPABILITIES Xiaoyao Li
2024-03-12 23:02   ` Isaku Yamahata
2024-03-19  2:43   ` Wang, Lei
2024-02-29  6:36 ` [PATCH v5 16/65] i386/tdx: Introduce is_tdx_vm() helper and cache tdx_guest object Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 17/65] i386/tdx: Adjust the supported CPUID based on TDX restrictions Xiaoyao Li
2024-05-31  8:47   ` Duan, Zhenzhong
2024-06-12  9:23     ` Xiaoyao Li
2024-06-13  8:26       ` Duan, Zhenzhong
2024-06-14  1:02         ` Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 18/65] i386/tdx: Make Intel-PT unsupported for TD guest Xiaoyao Li
2024-05-31  9:27   ` Duan, Zhenzhong
2024-06-12  9:24     ` Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 19/65] i386/tdx: Update tdx_cpuid_lookup[].tdx_fixed0/1 by tdx_caps.cpuid_config[] Xiaoyao Li
2024-05-31  9:27   ` Duan, Zhenzhong
2024-02-29  6:36 ` [PATCH v5 20/65] i386/tdx: Integrate tdx_caps->xfam_fixed0/1 into tdx_cpuid_lookup Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 21/65] i386/tdx: Integrate tdx_caps->attrs_fixed0/1 to tdx_cpuid_lookup Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 22/65] i386/kvm: Move architectural CPUID leaf generation to separate helper Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 23/65] kvm: Introduce kvm_arch_pre_create_vcpu() Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 24/65] i386/tdx: Initialize TDX before creating TD vcpus Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 25/65] i386/tdx: Add property sept-ve-disable for tdx-guest object Xiaoyao Li
2024-06-06 10:45   ` Daniel P. Berrangé
2024-06-12  8:28     ` Xiaoyao Li
2024-06-13  8:35       ` Duan, Zhenzhong
2024-06-14  1:04         ` Xiaoyao Li
2024-06-14  2:49           ` Duan, Zhenzhong
2024-06-14  7:49           ` Daniel P. Berrangé
2024-06-24 15:01             ` Daniel P. Berrangé
2024-06-26 14:45               ` Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 26/65] i386/tdx: Make sept_ve_disable set by default Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 27/65] i386/tdx: Wire CPU features up with attributes of TD guest Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 28/65] i386/tdx: Disable pmu for " Xiaoyao Li
2024-04-16  8:32   ` Chenyi Qiang
2024-04-16  8:55     ` Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 29/65] i386/tdx: Validate TD attributes Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 30/65] i386/tdx: Support user configurable mrconfigid/mrowner/mrownerconfig Xiaoyao Li
2024-02-29  8:37   ` Markus Armbruster
2024-02-29 10:50     ` Xiaoyao Li
2024-02-29 13:25       ` Markus Armbruster
2024-02-29 14:14         ` Xiaoyao Li
2024-03-07  8:39           ` Markus Armbruster
2024-03-07 11:24             ` Xiaoyao Li
2024-03-07 13:56               ` Markus Armbruster
2024-03-11  1:25                 ` Xiaoyao Li
2024-03-11  7:19                   ` Markus Armbruster
2024-02-29  6:36 ` [PATCH v5 31/65] i386/tdx: Implement user specified tsc frequency Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 32/65] i386/tdx: Set kvm_readonly_mem_enabled to false for TDX VM Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 33/65] kvm/tdx: Don't complain when converting vMMIO region to shared Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 34/65] kvm/tdx: Ignore memory conversion to shared of unassigned region Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 35/65] memory: Introduce memory_region_init_ram_guest_memfd() Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 36/65] i386/tdx: load TDVF for TD guest Xiaoyao Li
2024-02-29  6:36 ` [PATCH v5 37/65] i386/tdvf: Introduce function to parse TDVF metadata Xiaoyao Li
2024-06-04  6:32   ` Duan, Zhenzhong
2024-02-29  6:36 ` [PATCH v5 38/65] i386/tdx: Parse TDVF metadata for TDX VM Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 39/65] i386/tdx: Skip BIOS shadowing setup Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 40/65] i386/tdx: Don't initialize pc.rom for TDX VMs Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 41/65] i386/tdx: Track mem_ptr for each firmware entry of TDVF Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 42/65] i386/tdx: Track RAM entries for TDX VM Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 43/65] headers: Add definitions from UEFI spec for volumes, resources, etc Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 44/65] i386/tdx: Setup the TD HOB list Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 45/65] i386/tdx: Populate TDVF private memory via KVM_MEMORY_MAPPING Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 46/65] i386/tdx: Call KVM_TDX_INIT_VCPU to initialize TDX vcpu Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 47/65] i386/tdx: Finalize TDX VM Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 48/65] i386/tdx: handle TDG.VP.VMCALL<SetupEventNotifyInterrupt> Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 49/65] i386/tdx: handle TDG.VP.VMCALL<GetQuote> Xiaoyao Li
2024-02-29  8:40   ` Markus Armbruster
2024-02-29 10:54     ` Xiaoyao Li
2024-02-29 13:28       ` Markus Armbruster
2024-03-07 11:25         ` Xiaoyao Li
2024-03-11  9:27   ` Daniel P. Berrangé
2024-03-12  7:44     ` Xiaoyao Li
2024-03-12 18:02       ` Isaku Yamahata
2024-03-13 15:31       ` Daniel P. Berrangé
2024-03-15  8:41         ` Xiaoyao Li
2024-10-03 18:08   ` Daniel P. Berrangé
2025-04-02 15:26     ` Xiaoyao Li
2025-04-02 15:49       ` Daniel P. Berrangé
2025-04-03  7:28         ` Xiaoyao Li
2025-04-03  8:10           ` Daniel P. Berrangé
2025-04-08  2:00             ` Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 50/65] i386/tdx: handle TDG.VP.VMCALL<MapGPA> hypercall Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 51/65] i386/tdx: Handle TDG.VP.VMCALL<REPORT_FATAL_ERROR> Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 52/65] i386/tdx: Wire TDX_REPORT_FATAL_ERROR with GuestPanic facility Xiaoyao Li
2024-02-29  8:51   ` Markus Armbruster
2024-03-07 11:30     ` Xiaoyao Li
2024-03-07 13:51       ` Markus Armbruster
2024-03-11  1:28         ` Xiaoyao Li
2024-03-11  7:29           ` Markus Armbruster
2024-03-12  7:27             ` Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 53/65] pci-host/q35: Move PAM initialization above SMRAM initialization Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 54/65] q35: Introduce smm_ranges property for q35-pci-host Xiaoyao Li
2024-10-05  8:15   ` Michael Tokarev
2024-02-29  6:37 ` [PATCH v5 55/65] i386/tdx: Disable SMM for TDX VMs Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 56/65] i386/tdx: Disable PIC " Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 57/65] i386/tdx: Don't allow system reset " Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 58/65] i386/tdx: LMCE is not supported for TDX Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 59/65] hw/i386: add eoi_intercept_unsupported member to X86MachineState Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 60/65] hw/i386: add option to forcibly report edge trigger in acpi tables Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 61/65] i386/tdx: Don't synchronize guest tsc for TDs Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 62/65] i386/tdx: Only configure MSR_IA32_UCODE_REV in kvm_init_msrs() " Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 63/65] i386/tdx: Skip kvm_put_apicbase() " Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 64/65] i386/tdx: Don't get/put guest state for TDX VMs Xiaoyao Li
2024-02-29  6:37 ` [PATCH v5 65/65] docs: Add TDX documentation Xiaoyao Li

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.