[PATCH v18 053/121] KVM: x86/mmu: TDX: Do not enable page track for TD guest

isaku.yamahata@intel.com posted 121 patches 1 year, 11 months ago
There is a newer version of this series
[PATCH v18 053/121] KVM: x86/mmu: TDX: Do not enable page track for TD guest
Posted by isaku.yamahata@intel.com 1 year, 11 months ago
From: Yan Zhao <yan.y.zhao@intel.com>

TDX does not support write protection and hence page track.
Though !tdp_enabled and kvm_shadow_root_allocated(kvm) are always false
for TD guest, should also return false when external write tracking is
enabled.

Cc: Yuan Yao <yuan.yao@linux.intel.com>
Signed-off-by: Yan Zhao <yan.y.zhao@intel.com>
---
 arch/x86/kvm/mmu/page_track.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/arch/x86/kvm/mmu/page_track.c b/arch/x86/kvm/mmu/page_track.c
index c87da11f3a04..ce698ab213c1 100644
--- a/arch/x86/kvm/mmu/page_track.c
+++ b/arch/x86/kvm/mmu/page_track.c
@@ -22,6 +22,9 @@
 
 bool kvm_page_track_write_tracking_enabled(struct kvm *kvm)
 {
+	if (kvm->arch.vm_type == KVM_X86_TDX_VM)
+		return false;
+
 	return IS_ENABLED(CONFIG_KVM_EXTERNAL_WRITE_TRACKING) ||
 	       !tdp_enabled || kvm_shadow_root_allocated(kvm);
 }
-- 
2.25.1
Re: [PATCH v18 053/121] KVM: x86/mmu: TDX: Do not enable page track for TD guest
Posted by Binbin Wu 1 year, 10 months ago

On 1/23/2024 7:53 AM, isaku.yamahata@intel.com wrote:
> From: Yan Zhao <yan.y.zhao@intel.com>
>
> TDX does not support write protection and hence page track.
> Though !tdp_enabled and kvm_shadow_root_allocated(kvm) are always false
> for TD guest, should also return false when external write tracking is
> enabled.

Nit:
The preferred shortlog prefix format is "KVM: <topic>:", remove "TDX" from
the shortlog?
"KVM: x86/mmu: Do not enable page track for TD guest" should be OK.

Reviewed-by: Binbin Wu <binbin.wu@linux.intel.com>

>
> Cc: Yuan Yao <yuan.yao@linux.intel.com>
> Signed-off-by: Yan Zhao <yan.y.zhao@intel.com>
> ---
>   arch/x86/kvm/mmu/page_track.c | 3 +++
>   1 file changed, 3 insertions(+)
>
> diff --git a/arch/x86/kvm/mmu/page_track.c b/arch/x86/kvm/mmu/page_track.c
> index c87da11f3a04..ce698ab213c1 100644
> --- a/arch/x86/kvm/mmu/page_track.c
> +++ b/arch/x86/kvm/mmu/page_track.c
> @@ -22,6 +22,9 @@
>   
>   bool kvm_page_track_write_tracking_enabled(struct kvm *kvm)
>   {
> +	if (kvm->arch.vm_type == KVM_X86_TDX_VM)
> +		return false;
> +
>   	return IS_ENABLED(CONFIG_KVM_EXTERNAL_WRITE_TRACKING) ||
>   	       !tdp_enabled || kvm_shadow_root_allocated(kvm);
>   }