| From: |
| Kai Huang <kai.huang-AT-intel.com> |
| To: |
| pbonzini-AT-redhat.com, seanjc-AT-google.com |
| Subject: |
| [PATCH v2 0/3] KVM: VMX: Initialize TDX when loading KVM module |
| Date: |
| Fri, 15 Nov 2024 22:52:38 +1300 |
| Message-ID: |
| <cover.1731664295.git.kai.huang@intel.com> |
| Cc: |
| kvm-AT-vger.kernel.org, rick.p.edgecombe-AT-intel.com, isaku.yamahata-AT-intel.com, reinette.chatre-AT-intel.com, binbin.wu-AT-linux.intel.com, xiaoyao.li-AT-intel.com, yan.y.zhao-AT-intel.com, adrian.hunter-AT-intel.com, tony.lindgren-AT-intel.com, kristen-AT-linux.intel.com, linux-kernel-AT-vger.kernel.org |
| Archive-link: |
| Article |
Hi Paolo/Sean,
This series contains patches to initialize TDX when loading KVM module.
The main purpose of sending this out is to have a review and for the
integration to kvm-coco-queue, but this series can also be applied to
kvm/queue cleanly.
v1 -> v2:
- Add KVM_INTEL_TDX to guide KVM TDX code. (Sean)
- Distinguish "TDX cannot be supported" vs "TDX fail to enable due to
unexpected failure", and handle them differently. (Sean)
- Update changelog accordingly
- Remove useless comments around tdx_enable() and tdx_cpu_enable()
(Sean).
- Add SPDX-License-Identifier tag to vmx/tdx.h
Btw:
I kept the name tdx_bringup(), tdx_cleanup() but didn't change them to
tdx_module_init() and tdx_module_exit() cause I feel KVM does more than
"module" init/exit. We can change that if needed.
v1: https://lore.kernel.org/kvm/cover.1730120881.git.kai.huan...
Kai Huang (3):
KVM: VMX: Refactor VMX module init/exit functions
KVM: Export hardware virtualization enabling/disabling functions
KVM: VMX: Initialize TDX during KVM module load
arch/x86/kvm/Kconfig | 10 +++
arch/x86/kvm/Makefile | 1 +
arch/x86/kvm/vmx/main.c | 41 +++++++++++
arch/x86/kvm/vmx/tdx.c | 153 +++++++++++++++++++++++++++++++++++++++
arch/x86/kvm/vmx/tdx.h | 13 ++++
arch/x86/kvm/vmx/vmx.c | 23 +-----
arch/x86/kvm/vmx/vmx.h | 3 +
include/linux/kvm_host.h | 8 ++
virt/kvm/kvm_main.c | 18 +----
9 files changed, 235 insertions(+), 35 deletions(-)
create mode 100644 arch/x86/kvm/vmx/tdx.c
create mode 100644 arch/x86/kvm/vmx/tdx.h
base-commit: b1e0320c5a9fe875f56039ea43e183c59974d38a
--
2.46.2