[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250901160930.1785244-1-pbonzini@redhat.com>
Date: Mon, 1 Sep 2025 18:09:23 +0200
From: Paolo Bonzini <pbonzini@...hat.com>
To: linux-kernel@...r.kernel.org,
kvm@...r.kernel.org
Cc: dave.hansen@...el.com,
bp@...en8.de,
tglx@...utronix.de,
peterz@...radead.org,
mingo@...hat.com,
hpa@...or.com,
thomas.lendacky@....com,
x86@...nel.org,
kas@...nel.org,
rick.p.edgecombe@...el.com,
dwmw@...zon.co.uk,
kai.huang@...el.com,
seanjc@...gle.com,
reinette.chatre@...el.com,
isaku.yamahata@...el.com,
dan.j.williams@...el.com,
ashish.kalra@....com,
nik.borisov@...e.com,
chao.gao@...el.com,
sagis@...gle.com,
farrah.chen@...el.com
Subject: [PATCH v8 0/7] TDX host: kexec/kdump support
Currently kexec() support and TDX host are muturally exclusive in the
Kconfig. This series adds the TDX host kexec support so that they can
be both enabled in Kconfig.
With this series, the user can kexec (including crash kdump) to the new
kernel at any time regardless of whether TDX has been enabled in the
first kernel. One limitation is if the first kernel has ever enabled
TDX, for now the second kernel cannot use TDX. This is the future work
in my TODO list.
This series should go in through the tip tree.
Thanks,
Paolo
v7->v8: stub out the new code when kexec is not enabled in the kernel.
Of course even the smallest code change is subject to bikeshedding,
and I chose my preferred color for the bikeshed. But it's pastel
green and I'm sure you'll agree that it's beautiful.
Kai Huang (7):
x86/kexec: Consolidate relocate_kernel() function parameters
x86/sme: Use percpu boolean to control WBINVD during kexec
x86/virt/tdx: Mark memory cache state incoherent when making SEAMCALL
x86/kexec: Disable kexec/kdump on platforms with TDX partial write
erratum
x86/virt/tdx: Remove the !KEXEC_CORE dependency
x86/virt/tdx: Update the kexec section in the TDX documentation
KVM: TDX: Explicitly do WBINVD when no more TDX SEAMCALLs
Documentation/arch/x86/tdx.rst | 14 ++++-----
arch/x86/Kconfig | 1 -
arch/x86/include/asm/kexec.h | 12 ++++++--
arch/x86/include/asm/processor.h | 2 ++
arch/x86/include/asm/tdx.h | 31 +++++++++++++++++++-
arch/x86/kernel/cpu/amd.c | 17 +++++++++++
arch/x86/kernel/machine_kexec_64.c | 44 ++++++++++++++++++++++------
arch/x86/kernel/process.c | 24 +++++++--------
arch/x86/kernel/relocate_kernel_64.S | 36 +++++++++++++++--------
arch/x86/kvm/vmx/tdx.c | 10 +++++++
arch/x86/virt/vmx/tdx/tdx.c | 23 +++++++++++++--
11 files changed, 167 insertions(+), 47 deletions(-)
--
2.51.0
Powered by blists - more mailing lists