]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
KVM: TDX: Set gfn_direct_bits to shared bit
authorIsaku Yamahata <isaku.yamahata@intel.com>
Tue, 12 Nov 2024 07:36:13 +0000 (15:36 +0800)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 14 Mar 2025 18:20:52 +0000 (14:20 -0400)
commite0fbb3bbb5d076769621d7bac06046d4f3c75875
tree7b678af07e0848c7df09192af171541df4fcb7c6
parent87e3f45e80474a652ad6e75cc33a6b68602de463
KVM: TDX: Set gfn_direct_bits to shared bit

Make the direct root handle memslot GFNs at an alias with the TDX shared
bit set.

For TDX shared memory, the memslot GFNs need to be mapped at an alias with
the shared bit set. These shared mappings will be mapped on the KVM MMU's
"direct" root. The direct root has it's mappings shifted by applying
"gfn_direct_bits" as a mask. The concept of "GPAW" (guest physical address
width) determines the location of the shared bit. So set gfn_direct_bits
based on this, to map shared memory at the proper GPA.

Signed-off-by: Isaku Yamahata <isaku.yamahata@intel.com>
Co-developed-by: Rick Edgecombe <rick.p.edgecombe@intel.com>
Signed-off-by: Rick Edgecombe <rick.p.edgecombe@intel.com>
Co-developed-by: Yan Zhao <yan.y.zhao@intel.com>
Signed-off-by: Yan Zhao <yan.y.zhao@intel.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Message-ID: <20241112073613.22100-1-yan.y.zhao@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/vmx/tdx.c