]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
x86/tdx: Use pg_level in TDX APIs, not the TDX-Module's 0-based level
authorSean Christopherson <seanjc@google.com>
Thu, 29 Jan 2026 01:14:33 +0000 (17:14 -0800)
committerSean Christopherson <seanjc@google.com>
Wed, 13 May 2026 18:13:16 +0000 (11:13 -0700)
commit4487492b92a4f3df4166ab27a277b3d34867e5f2
treee5d2d7c640427cd765cc555deafd44d1d13d0c8b
parentb7fbe9a1bf9ee6c967ef77d366ca58c35fcf1887
x86/tdx: Use pg_level in TDX APIs, not the TDX-Module's 0-based level

Rework the TDX APIs to take the kernel's 1-based pg_level enum, not the
TDX-Module's 0-based level.  The APIs are _kernel_ APIs, not TDX-Module
APIs, and the kernel (and KVM) uses "enum pg_level" literally everywhere.

Using "enum pg_level" eliminates ambiguity when looking at the APIs (it's
NOT clear that "int level" refers to the TDX-Module's level), and will
allow for using existing helpers like page_level_size() when support for
hugepages is added to the S-EPT APIs.

No functional change intended.

Cc: Kai Huang <kai.huang@intel.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Rick Edgecombe <rick.p.edgecombe@intel.com>
Cc: Yan Zhao <yan.y.zhao@intel.com>
Cc: Vishal Annapurve <vannapurve@google.com>
Cc: Ackerley Tng <ackerleytng@google.com>
Acked-by: Kiryl Shutsemau <kas@kernel.org>
Reviewed-by: Kai Huang <kai.huang@intel.com>
Tested-by: Kai Huang <kai.huang@intel.com>
Reviewed-by: Rick Edgecombe <rick.p.edgecombe@intel.com>
Tested-by: Rick Edgecombe <rick.p.edgecombe@intel.com>
Acked-by: Dave Hansen <dave.hansen@linux.intel.com>
Link: https://patch.msgid.link/20260129011517.3545883-2-seanjc@google.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
arch/x86/include/asm/tdx.h
arch/x86/kvm/vmx/tdx.c
arch/x86/virt/vmx/tdx/tdx.c