All of lore.kernel.org
 help / color / mirror / Atom feed
From: Binbin Wu <binbin.wu@linux.intel.com>
To: Sean Christopherson <seanjc@google.com>
Cc: Marc Zyngier <maz@kernel.org>,
	Oliver Upton <oliver.upton@linux.dev>,
	Tianrui Zhao <zhaotianrui@loongson.cn>,
	Bibo Mao <maobibo@loongson.cn>,
	Huacai Chen <chenhuacai@kernel.org>,
	Madhavan Srinivasan <maddy@linux.ibm.com>,
	Anup Patel <anup@brainfault.org>, Paul Walmsley <pjw@kernel.org>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Albert Ou <aou@eecs.berkeley.edu>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Janosch Frank <frankja@linux.ibm.com>,
	Claudio Imbrenda <imbrenda@linux.ibm.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Kirill A. Shutemov" <kas@kernel.org>,
	linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev,
	kvm@vger.kernel.org, loongarch@lists.linux.dev,
	linux-mips@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org,
	x86@kernel.org, linux-coco@lists.linux.dev,
	linux-kernel@vger.kernel.org, Ira Weiny <ira.weiny@intel.com>,
	Kai Huang <kai.huang@intel.com>,
	Michael Roth <michael.roth@amd.com>,
	Yan Zhao <yan.y.zhao@intel.com>,
	Vishal Annapurve <vannapurve@google.com>,
	Rick Edgecombe <rick.p.edgecombe@intel.com>,
	Ackerley Tng <ackerleytng@google.com>
Subject: Re: [PATCH v3 03/25] KVM: TDX: Drop PROVE_MMU=y sanity check on to-be-populated mappings
Date: Wed, 22 Oct 2025 11:15:46 +0800	[thread overview]
Message-ID: <eb6a2ca0-84eb-4770-8300-cd8892eae6ad@linux.intel.com> (raw)
In-Reply-To: <20251017003244.186495-4-seanjc@google.com>



On 10/17/2025 8:32 AM, Sean Christopherson wrote:
> Drop TDX's sanity check that a mirror EPT mapping isn't zapped between
> creating said mapping and doing TDH.MEM.PAGE.ADD, as the check is
> simultaneously superfluous and incomplete.  Per commit 2608f1057601
> ("KVM: x86/tdp_mmu: Add a helper function to walk down the TDP MMU"), the
> justification for introducing kvm_tdp_mmu_gpa_is_mapped() was to check
> that the target gfn was pre-populated, with a link that points to this
> snippet:
>
>   : > One small question:
>   : >
>   : > What if the memory region passed to KVM_TDX_INIT_MEM_REGION hasn't been pre-
>   : > populated?  If we want to make KVM_TDX_INIT_MEM_REGION work with these regions,
>   : > then we still need to do the real map.  Or we can make KVM_TDX_INIT_MEM_REGION
>   : > return error when it finds the region hasn't been pre-populated?
>   :
>   : Return an error.  I don't love the idea of bleeding so many TDX details into
>   : userspace, but I'm pretty sure that ship sailed a long, long time ago.
>
> But that justification makes little sense for the final code, as the check
> on nr_premapped after TDH.MEM.PAGE.ADD will detect and return an error if
> KVM attempted to zap a S-EPT entry (tdx_sept_zap_private_spte() will fail
> on TDH.MEM.RANGE.BLOCK due lack of a valid S-EPT entry).  And as evidenced
> by the "is mapped?" code being guarded with CONFIG_KVM_PROVE_MMU=y, KVM is
> NOT relying on the check for general correctness.
>
> The sanity check is also incomplete in the sense that mmu_lock is dropped
> between the check and TDH.MEM.PAGE.ADD, i.e. will only detect KVM bugs that
> zap SPTEs in a very specific window (note, this also applies to the check
> on nr_premapped).
>
> Removing the sanity check will allow removing kvm_tdp_mmu_gpa_is_mapped(),
> which has no business being exposed to vendor code, and more importantly
> will pave the way for eliminating the "pre-map" approach entirely in favor
> of doing TDH.MEM.PAGE.ADD under mmu_lock.
>
> Reviewed-by: Ira Weiny <ira.weiny@intel.com>
> Reviewed-by: Kai Huang <kai.huang@intel.com>
> Signed-off-by: Sean Christopherson <seanjc@google.com>

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

> ---
>   arch/x86/kvm/vmx/tdx.c | 14 --------------
>   1 file changed, 14 deletions(-)
>
> diff --git a/arch/x86/kvm/vmx/tdx.c b/arch/x86/kvm/vmx/tdx.c
> index 326db9b9c567..4c3014befe9f 100644
> --- a/arch/x86/kvm/vmx/tdx.c
> +++ b/arch/x86/kvm/vmx/tdx.c
> @@ -3181,20 +3181,6 @@ static int tdx_gmem_post_populate(struct kvm *kvm, gfn_t gfn, kvm_pfn_t pfn,
>   	if (ret < 0)
>   		goto out;
>   
> -	/*
> -	 * The private mem cannot be zapped after kvm_tdp_map_page()
> -	 * because all paths are covered by slots_lock and the
> -	 * filemap invalidate lock.  Check that they are indeed enough.
> -	 */
> -	if (IS_ENABLED(CONFIG_KVM_PROVE_MMU)) {
> -		scoped_guard(read_lock, &kvm->mmu_lock) {
> -			if (KVM_BUG_ON(!kvm_tdp_mmu_gpa_is_mapped(vcpu, gpa), kvm)) {
> -				ret = -EIO;
> -				goto out;
> -			}
> -		}
> -	}
> -
>   	ret = 0;
>   	err = tdh_mem_page_add(&kvm_tdx->td, gpa, pfn_to_page(pfn),
>   			       src_page, &entry, &level_state);


-- 
kvm-riscv mailing list
kvm-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kvm-riscv

WARNING: multiple messages have this Message-ID (diff)
From: Binbin Wu <binbin.wu@linux.intel.com>
To: Sean Christopherson <seanjc@google.com>
Cc: Marc Zyngier <maz@kernel.org>,
	Oliver Upton <oliver.upton@linux.dev>,
	Tianrui Zhao <zhaotianrui@loongson.cn>,
	Bibo Mao <maobibo@loongson.cn>,
	Huacai Chen <chenhuacai@kernel.org>,
	Madhavan Srinivasan <maddy@linux.ibm.com>,
	Anup Patel <anup@brainfault.org>, Paul Walmsley <pjw@kernel.org>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Albert Ou <aou@eecs.berkeley.edu>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Janosch Frank <frankja@linux.ibm.com>,
	Claudio Imbrenda <imbrenda@linux.ibm.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Kirill A. Shutemov" <kas@kernel.org>,
	linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev,
	kvm@vger.kernel.org, loongarch@lists.linux.dev,
	linux-mips@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org,
	x86@kernel.org, linux-coco@lists.linux.dev,
	linux-kernel@vger.kernel.org, Ira Weiny <ira.weiny@intel.com>,
	Kai Huang <kai.huang@intel.com>,
	Michael Roth <michael.roth@amd.com>,
	Yan Zhao <yan.y.zhao@intel.com>,
	Vishal Annapurve <vannapurve@google.com>,
	Rick Edgecombe <rick.p.edgecombe@intel.com>,
	Ackerley Tng <ackerleytng@google.com>
Subject: Re: [PATCH v3 03/25] KVM: TDX: Drop PROVE_MMU=y sanity check on to-be-populated mappings
Date: Wed, 22 Oct 2025 11:15:46 +0800	[thread overview]
Message-ID: <eb6a2ca0-84eb-4770-8300-cd8892eae6ad@linux.intel.com> (raw)
In-Reply-To: <20251017003244.186495-4-seanjc@google.com>



On 10/17/2025 8:32 AM, Sean Christopherson wrote:
> Drop TDX's sanity check that a mirror EPT mapping isn't zapped between
> creating said mapping and doing TDH.MEM.PAGE.ADD, as the check is
> simultaneously superfluous and incomplete.  Per commit 2608f1057601
> ("KVM: x86/tdp_mmu: Add a helper function to walk down the TDP MMU"), the
> justification for introducing kvm_tdp_mmu_gpa_is_mapped() was to check
> that the target gfn was pre-populated, with a link that points to this
> snippet:
>
>   : > One small question:
>   : >
>   : > What if the memory region passed to KVM_TDX_INIT_MEM_REGION hasn't been pre-
>   : > populated?  If we want to make KVM_TDX_INIT_MEM_REGION work with these regions,
>   : > then we still need to do the real map.  Or we can make KVM_TDX_INIT_MEM_REGION
>   : > return error when it finds the region hasn't been pre-populated?
>   :
>   : Return an error.  I don't love the idea of bleeding so many TDX details into
>   : userspace, but I'm pretty sure that ship sailed a long, long time ago.
>
> But that justification makes little sense for the final code, as the check
> on nr_premapped after TDH.MEM.PAGE.ADD will detect and return an error if
> KVM attempted to zap a S-EPT entry (tdx_sept_zap_private_spte() will fail
> on TDH.MEM.RANGE.BLOCK due lack of a valid S-EPT entry).  And as evidenced
> by the "is mapped?" code being guarded with CONFIG_KVM_PROVE_MMU=y, KVM is
> NOT relying on the check for general correctness.
>
> The sanity check is also incomplete in the sense that mmu_lock is dropped
> between the check and TDH.MEM.PAGE.ADD, i.e. will only detect KVM bugs that
> zap SPTEs in a very specific window (note, this also applies to the check
> on nr_premapped).
>
> Removing the sanity check will allow removing kvm_tdp_mmu_gpa_is_mapped(),
> which has no business being exposed to vendor code, and more importantly
> will pave the way for eliminating the "pre-map" approach entirely in favor
> of doing TDH.MEM.PAGE.ADD under mmu_lock.
>
> Reviewed-by: Ira Weiny <ira.weiny@intel.com>
> Reviewed-by: Kai Huang <kai.huang@intel.com>
> Signed-off-by: Sean Christopherson <seanjc@google.com>

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

> ---
>   arch/x86/kvm/vmx/tdx.c | 14 --------------
>   1 file changed, 14 deletions(-)
>
> diff --git a/arch/x86/kvm/vmx/tdx.c b/arch/x86/kvm/vmx/tdx.c
> index 326db9b9c567..4c3014befe9f 100644
> --- a/arch/x86/kvm/vmx/tdx.c
> +++ b/arch/x86/kvm/vmx/tdx.c
> @@ -3181,20 +3181,6 @@ static int tdx_gmem_post_populate(struct kvm *kvm, gfn_t gfn, kvm_pfn_t pfn,
>   	if (ret < 0)
>   		goto out;
>   
> -	/*
> -	 * The private mem cannot be zapped after kvm_tdp_map_page()
> -	 * because all paths are covered by slots_lock and the
> -	 * filemap invalidate lock.  Check that they are indeed enough.
> -	 */
> -	if (IS_ENABLED(CONFIG_KVM_PROVE_MMU)) {
> -		scoped_guard(read_lock, &kvm->mmu_lock) {
> -			if (KVM_BUG_ON(!kvm_tdp_mmu_gpa_is_mapped(vcpu, gpa), kvm)) {
> -				ret = -EIO;
> -				goto out;
> -			}
> -		}
> -	}
> -
>   	ret = 0;
>   	err = tdh_mem_page_add(&kvm_tdx->td, gpa, pfn_to_page(pfn),
>   			       src_page, &entry, &level_state);


WARNING: multiple messages have this Message-ID (diff)
From: Binbin Wu <binbin.wu@linux.intel.com>
To: Sean Christopherson <seanjc@google.com>
Cc: Marc Zyngier <maz@kernel.org>,
	Oliver Upton <oliver.upton@linux.dev>,
	Tianrui Zhao <zhaotianrui@loongson.cn>,
	Bibo Mao <maobibo@loongson.cn>,
	Huacai Chen <chenhuacai@kernel.org>,
	Madhavan Srinivasan <maddy@linux.ibm.com>,
	Anup Patel <anup@brainfault.org>, Paul Walmsley <pjw@kernel.org>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Albert Ou <aou@eecs.berkeley.edu>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Janosch Frank <frankja@linux.ibm.com>,
	Claudio Imbrenda <imbrenda@linux.ibm.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	"Kirill A. Shutemov" <kas@kernel.org>,
	linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev,
	kvm@vger.kernel.org, loongarch@lists.linux.dev,
	linux-mips@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org,
	x86@kernel.org, linux-coco@lists.linux.dev,
	linux-kernel@vger.kernel.org, Ira Weiny <ira.weiny@intel.com>,
	Kai Huang <kai.huang@intel.com>,
	Michael Roth <michael.roth@amd.com>,
	Yan Zhao <yan.y.zhao@intel.com>,
	Vishal Annapurve <vannapurve@google.com>,
	Rick Edgecombe <rick.p.edgecombe@intel.com>,
	Ackerley Tng <ackerleytng@google.com>
Subject: Re: [PATCH v3 03/25] KVM: TDX: Drop PROVE_MMU=y sanity check on to-be-populated mappings
Date: Wed, 22 Oct 2025 11:15:46 +0800	[thread overview]
Message-ID: <eb6a2ca0-84eb-4770-8300-cd8892eae6ad@linux.intel.com> (raw)
In-Reply-To: <20251017003244.186495-4-seanjc@google.com>



On 10/17/2025 8:32 AM, Sean Christopherson wrote:
> Drop TDX's sanity check that a mirror EPT mapping isn't zapped between
> creating said mapping and doing TDH.MEM.PAGE.ADD, as the check is
> simultaneously superfluous and incomplete.  Per commit 2608f1057601
> ("KVM: x86/tdp_mmu: Add a helper function to walk down the TDP MMU"), the
> justification for introducing kvm_tdp_mmu_gpa_is_mapped() was to check
> that the target gfn was pre-populated, with a link that points to this
> snippet:
>
>   : > One small question:
>   : >
>   : > What if the memory region passed to KVM_TDX_INIT_MEM_REGION hasn't been pre-
>   : > populated?  If we want to make KVM_TDX_INIT_MEM_REGION work with these regions,
>   : > then we still need to do the real map.  Or we can make KVM_TDX_INIT_MEM_REGION
>   : > return error when it finds the region hasn't been pre-populated?
>   :
>   : Return an error.  I don't love the idea of bleeding so many TDX details into
>   : userspace, but I'm pretty sure that ship sailed a long, long time ago.
>
> But that justification makes little sense for the final code, as the check
> on nr_premapped after TDH.MEM.PAGE.ADD will detect and return an error if
> KVM attempted to zap a S-EPT entry (tdx_sept_zap_private_spte() will fail
> on TDH.MEM.RANGE.BLOCK due lack of a valid S-EPT entry).  And as evidenced
> by the "is mapped?" code being guarded with CONFIG_KVM_PROVE_MMU=y, KVM is
> NOT relying on the check for general correctness.
>
> The sanity check is also incomplete in the sense that mmu_lock is dropped
> between the check and TDH.MEM.PAGE.ADD, i.e. will only detect KVM bugs that
> zap SPTEs in a very specific window (note, this also applies to the check
> on nr_premapped).
>
> Removing the sanity check will allow removing kvm_tdp_mmu_gpa_is_mapped(),
> which has no business being exposed to vendor code, and more importantly
> will pave the way for eliminating the "pre-map" approach entirely in favor
> of doing TDH.MEM.PAGE.ADD under mmu_lock.
>
> Reviewed-by: Ira Weiny <ira.weiny@intel.com>
> Reviewed-by: Kai Huang <kai.huang@intel.com>
> Signed-off-by: Sean Christopherson <seanjc@google.com>

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

> ---
>   arch/x86/kvm/vmx/tdx.c | 14 --------------
>   1 file changed, 14 deletions(-)
>
> diff --git a/arch/x86/kvm/vmx/tdx.c b/arch/x86/kvm/vmx/tdx.c
> index 326db9b9c567..4c3014befe9f 100644
> --- a/arch/x86/kvm/vmx/tdx.c
> +++ b/arch/x86/kvm/vmx/tdx.c
> @@ -3181,20 +3181,6 @@ static int tdx_gmem_post_populate(struct kvm *kvm, gfn_t gfn, kvm_pfn_t pfn,
>   	if (ret < 0)
>   		goto out;
>   
> -	/*
> -	 * The private mem cannot be zapped after kvm_tdp_map_page()
> -	 * because all paths are covered by slots_lock and the
> -	 * filemap invalidate lock.  Check that they are indeed enough.
> -	 */
> -	if (IS_ENABLED(CONFIG_KVM_PROVE_MMU)) {
> -		scoped_guard(read_lock, &kvm->mmu_lock) {
> -			if (KVM_BUG_ON(!kvm_tdp_mmu_gpa_is_mapped(vcpu, gpa), kvm)) {
> -				ret = -EIO;
> -				goto out;
> -			}
> -		}
> -	}
> -
>   	ret = 0;
>   	err = tdh_mem_page_add(&kvm_tdx->td, gpa, pfn_to_page(pfn),
>   			       src_page, &entry, &level_state);


_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

  reply	other threads:[~2025-10-22  3:16 UTC|newest]

Thread overview: 291+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-17  0:32 [PATCH v3 00/25] KVM: x86/mmu: TDX post-populate cleanups Sean Christopherson
2025-10-17  0:32 ` Sean Christopherson
2025-10-17  0:32 ` Sean Christopherson
2025-10-17  0:32 ` [PATCH v3 01/25] KVM: Make support for kvm_arch_vcpu_async_ioctl() mandatory Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  9:12   ` Claudio Imbrenda
2025-10-17  9:12     ` Claudio Imbrenda
2025-10-17  9:12     ` Claudio Imbrenda
2025-10-17  0:32 ` [PATCH v3 02/25] KVM: Rename kvm_arch_vcpu_async_ioctl() to kvm_arch_vcpu_unlocked_ioctl() Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  9:13   ` Claudio Imbrenda
2025-10-17  9:13     ` Claudio Imbrenda
2025-10-17  9:13     ` Claudio Imbrenda
2025-10-17  0:32 ` [PATCH v3 03/25] KVM: TDX: Drop PROVE_MMU=y sanity check on to-be-populated mappings Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-22  3:15   ` Binbin Wu [this message]
2025-10-22  3:15     ` Binbin Wu
2025-10-22  3:15     ` Binbin Wu
2025-10-17  0:32 ` [PATCH v3 04/25] KVM: x86/mmu: Add dedicated API to map guest_memfd pfn into TDP MMU Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-21  0:10   ` Edgecombe, Rick P
2025-10-21  0:10     ` Edgecombe, Rick P
2025-10-21  0:10     ` Edgecombe, Rick P
2025-10-21  4:06   ` Yan Zhao
2025-10-21  4:06     ` Yan Zhao
2025-10-21  4:06     ` Yan Zhao
2025-10-21 16:36     ` Sean Christopherson
2025-10-21 16:36       ` Sean Christopherson
2025-10-21 16:36       ` Sean Christopherson
2025-10-22  8:05       ` Yan Zhao
2025-10-22  8:05         ` Yan Zhao
2025-10-22  8:05         ` Yan Zhao
2025-10-22 18:12         ` Sean Christopherson
2025-10-22 18:12           ` Sean Christopherson
2025-10-22 18:12           ` Sean Christopherson
2025-10-23  6:48           ` Yan Zhao
2025-10-23  6:48             ` Yan Zhao
2025-10-23  6:48             ` Yan Zhao
2025-10-22  4:53   ` Yan Zhao
2025-10-22  4:53     ` Yan Zhao
2025-10-22  4:53     ` Yan Zhao
2025-10-30  8:34     ` Yan Zhao
2025-10-30  8:34       ` Yan Zhao
2025-10-30  8:34       ` Yan Zhao
2025-11-04 17:57       ` Sean Christopherson
2025-11-04 17:57         ` Sean Christopherson
2025-11-04 17:57         ` Sean Christopherson
2025-11-05  7:32         ` Yan Zhao
2025-11-05  7:32           ` Yan Zhao
2025-11-05  7:32           ` Yan Zhao
2025-11-05  7:47           ` Yan Zhao
2025-11-05  7:47             ` Yan Zhao
2025-11-05  7:47             ` Yan Zhao
2025-11-05 15:26             ` Sean Christopherson
2025-11-05 15:26               ` Sean Christopherson
2025-11-05 15:26               ` Sean Christopherson
2025-10-23 10:28   ` Huang, Kai
2025-10-23 10:28     ` Huang, Kai
2025-10-23 10:28     ` Huang, Kai
2025-10-17  0:32 ` [PATCH v3 05/25] Revert "KVM: x86/tdp_mmu: Add a helper function to walk down the TDP MMU" Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-22  5:56   ` Binbin Wu
2025-10-22  5:56     ` Binbin Wu
2025-10-22  5:56     ` Binbin Wu
2025-10-23 10:30   ` Huang, Kai
2025-10-23 10:30     ` Huang, Kai
2025-10-23 10:30     ` Huang, Kai
2025-10-17  0:32 ` [PATCH v3 06/25] KVM: x86/mmu: Rename kvm_tdp_map_page() to kvm_tdp_page_prefault() Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-22  5:57   ` Binbin Wu
2025-10-22  5:57     ` Binbin Wu
2025-10-22  5:57     ` Binbin Wu
2025-10-23 10:38   ` Huang, Kai
2025-10-23 10:38     ` Huang, Kai
2025-10-23 10:38     ` Huang, Kai
2025-10-17  0:32 ` [PATCH v3 07/25] KVM: TDX: Drop superfluous page pinning in S-EPT management Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-21  0:10   ` Edgecombe, Rick P
2025-10-21  0:10     ` Edgecombe, Rick P
2025-10-21  0:10     ` Edgecombe, Rick P
2025-10-17  0:32 ` [PATCH v3 08/25] KVM: TDX: Return -EIO, not -EINVAL, on a KVM_BUG_ON() condition Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32 ` [PATCH v3 09/25] KVM: TDX: Fold tdx_sept_drop_private_spte() into tdx_sept_remove_private_spte() Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-23 10:53   ` Huang, Kai
2025-10-23 10:53     ` Huang, Kai
2025-10-23 10:53     ` Huang, Kai
2025-10-23 14:59     ` Sean Christopherson
2025-10-23 14:59       ` Sean Christopherson
2025-10-23 14:59       ` Sean Christopherson
2025-10-23 22:20       ` Huang, Kai
2025-10-23 22:20         ` Huang, Kai
2025-10-23 22:20         ` Huang, Kai
2025-10-17  0:32 ` [PATCH v3 10/25] KVM: x86/mmu: Drop the return code from kvm_x86_ops.remove_external_spte() Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-22  8:46   ` Yan Zhao
2025-10-22  8:46     ` Yan Zhao
2025-10-22  8:46     ` Yan Zhao
2025-10-22 19:08     ` Sean Christopherson
2025-10-22 19:08       ` Sean Christopherson
2025-10-22 19:08       ` Sean Christopherson
2025-10-17  0:32 ` [PATCH v3 11/25] KVM: TDX: Avoid a double-KVM_BUG_ON() in tdx_sept_zap_private_spte() Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-23 22:21   ` Huang, Kai
2025-10-23 22:21     ` Huang, Kai
2025-10-23 22:21     ` Huang, Kai
2025-10-17  0:32 ` [PATCH v3 12/25] KVM: TDX: Use atomic64_dec_return() instead of a poor equivalent Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32 ` [PATCH v3 13/25] KVM: TDX: Fold tdx_mem_page_record_premap_cnt() into its sole caller Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-23 22:32   ` Huang, Kai
2025-10-23 22:32     ` Huang, Kai
2025-10-23 22:32     ` Huang, Kai
2025-10-24  7:21     ` Huang, Kai
2025-10-24  7:21       ` Huang, Kai
2025-10-24  7:21       ` Huang, Kai
2025-10-24  7:38   ` Binbin Wu
2025-10-24  7:38     ` Binbin Wu
2025-10-24  7:38     ` Binbin Wu
2025-10-24 16:33     ` Sean Christopherson
2025-10-24 16:33       ` Sean Christopherson
2025-10-24 16:33       ` Sean Christopherson
2025-10-27  9:01       ` Binbin Wu
2025-10-27  9:01         ` Binbin Wu
2025-10-27  9:01         ` Binbin Wu
2025-10-28  0:29         ` Sean Christopherson
2025-10-28  0:29           ` Sean Christopherson
2025-10-28  0:29           ` Sean Christopherson
2025-10-17  0:32 ` [PATCH v3 14/25] KVM: TDX: Bug the VM if extended the initial measurement fails Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-21  0:10   ` Edgecombe, Rick P
2025-10-21  0:10     ` Edgecombe, Rick P
2025-10-21  0:10     ` Edgecombe, Rick P
2025-10-23 17:27     ` Sean Christopherson
2025-10-23 17:27       ` Sean Christopherson
2025-10-23 17:27       ` Sean Christopherson
2025-10-23 22:48   ` Huang, Kai
2025-10-23 22:48     ` Huang, Kai
2025-10-23 22:48     ` Huang, Kai
2025-10-24 16:35     ` Sean Christopherson
2025-10-24 16:35       ` Sean Christopherson
2025-10-24 16:35       ` Sean Christopherson
2025-10-27  9:31       ` Yan Zhao
2025-10-27  9:31         ` Yan Zhao
2025-10-27  9:31         ` Yan Zhao
2025-10-17  0:32 ` [PATCH v3 15/25] KVM: TDX: ADD pages to the TD image while populating mirror EPT entries Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-24  7:18   ` Huang, Kai
2025-10-24  7:18     ` Huang, Kai
2025-10-24  7:18     ` Huang, Kai
2025-10-17  0:32 ` [PATCH v3 16/25] KVM: TDX: Fold tdx_sept_zap_private_spte() into tdx_sept_remove_private_spte() Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-24  9:53   ` Huang, Kai
2025-10-24  9:53     ` Huang, Kai
2025-10-24  9:53     ` Huang, Kai
2025-10-17  0:32 ` [PATCH v3 17/25] KVM: TDX: Combine KVM_BUG_ON + pr_tdx_error() into TDX_BUG_ON() Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32 ` [PATCH v3 18/25] KVM: TDX: Derive error argument names from the local variable names Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32 ` [PATCH v3 19/25] KVM: TDX: Assert that mmu_lock is held for write when removing S-EPT entries Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-23  7:37   ` Yan Zhao
2025-10-23  7:37     ` Yan Zhao
2025-10-23  7:37     ` Yan Zhao
2025-10-23 15:14     ` Sean Christopherson
2025-10-23 15:14       ` Sean Christopherson
2025-10-23 15:14       ` Sean Christopherson
2025-10-24 10:05       ` Yan Zhao
2025-10-24 10:05         ` Yan Zhao
2025-10-24 10:05         ` Yan Zhao
2025-10-17  0:32 ` [PATCH v3 20/25] KVM: TDX: Add macro to retry SEAMCALLs when forcing vCPUs out of guest Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-24 10:09   ` Huang, Kai
2025-10-24 10:09     ` Huang, Kai
2025-10-24 10:09     ` Huang, Kai
2025-10-27 19:20     ` Sean Christopherson
2025-10-27 19:20       ` Sean Christopherson
2025-10-27 19:20       ` Sean Christopherson
2025-10-27 22:00       ` Huang, Kai
2025-10-27 22:00         ` Huang, Kai
2025-10-27 22:00         ` Huang, Kai
2025-10-17  0:32 ` [PATCH v3 21/25] KVM: TDX: Add tdx_get_cmd() helper to get and validate sub-ioctl command Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-21  0:12   ` Edgecombe, Rick P
2025-10-21  0:12     ` Edgecombe, Rick P
2025-10-21  0:12     ` Edgecombe, Rick P
2025-10-24 10:11   ` Huang, Kai
2025-10-24 10:11     ` Huang, Kai
2025-10-24 10:11     ` Huang, Kai
2025-10-17  0:32 ` [PATCH v3 22/25] KVM: TDX: Convert INIT_MEM_REGION and INIT_VCPU to "unlocked" vCPU ioctl Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-24 10:36   ` Huang, Kai
2025-10-24 10:36     ` Huang, Kai
2025-10-24 10:36     ` Huang, Kai
2025-10-17  0:32 ` [PATCH v3 23/25] KVM: TDX: Use guard() to acquire kvm->lock in tdx_vm_ioctl() Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-21  0:10   ` Edgecombe, Rick P
2025-10-21  0:10     ` Edgecombe, Rick P
2025-10-21  0:10     ` Edgecombe, Rick P
2025-10-21 16:56     ` Sean Christopherson
2025-10-21 16:56       ` Sean Christopherson
2025-10-21 16:56       ` Sean Christopherson
2025-10-21 19:03       ` Edgecombe, Rick P
2025-10-21 19:03         ` Edgecombe, Rick P
2025-10-21 19:03         ` Edgecombe, Rick P
2025-10-24 10:36   ` Huang, Kai
2025-10-24 10:36     ` Huang, Kai
2025-10-24 10:36     ` Huang, Kai
2025-10-17  0:32 ` [PATCH v3 24/25] KVM: TDX: Guard VM state transitions with "all" the locks Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-24 10:02   ` Yan Zhao
2025-10-24 10:02     ` Yan Zhao
2025-10-24 10:02     ` Yan Zhao
2025-10-24 16:57     ` Sean Christopherson
2025-10-24 16:57       ` Sean Christopherson
2025-10-24 16:57       ` Sean Christopherson
2025-10-27  9:26       ` Yan Zhao
2025-10-27  9:26         ` Yan Zhao
2025-10-27  9:26         ` Yan Zhao
2025-10-27 17:46         ` Edgecombe, Rick P
2025-10-27 17:46           ` Edgecombe, Rick P
2025-10-27 17:46           ` Edgecombe, Rick P
2025-10-27 18:10           ` Sean Christopherson
2025-10-27 18:10             ` Sean Christopherson
2025-10-27 18:10             ` Sean Christopherson
2025-10-28  0:28             ` [PATCH] KVM: TDX: Take MMU lock around tdh_vp_init() Rick Edgecombe
2025-10-28  0:28               ` Rick Edgecombe
2025-10-28  0:28               ` Rick Edgecombe
2025-10-28  5:37               ` Yan Zhao
2025-10-28  5:37                 ` Yan Zhao
2025-10-28  5:37                 ` Yan Zhao
2025-10-29  6:37               ` Binbin Wu
2025-10-29  6:37                 ` Binbin Wu
2025-10-29  6:37                 ` Binbin Wu
2025-11-18 23:31               ` Sean Christopherson
2025-11-18 23:31                 ` Sean Christopherson
2025-11-18 23:31                 ` Sean Christopherson
2025-11-19  0:01                 ` Edgecombe, Rick P
2025-11-19  0:01                   ` Edgecombe, Rick P
2025-11-19  0:01                   ` Edgecombe, Rick P
2025-11-19  0:02                 ` Edgecombe, Rick P
2025-11-19  0:02                   ` Edgecombe, Rick P
2025-11-19  0:02                   ` Edgecombe, Rick P
2025-10-28  1:37           ` [PATCH v3 24/25] KVM: TDX: Guard VM state transitions with "all" the locks Yan Zhao
2025-10-28  1:37             ` Yan Zhao
2025-10-28  1:37             ` Yan Zhao
2025-10-28 17:40             ` Edgecombe, Rick P
2025-10-28 17:40               ` Edgecombe, Rick P
2025-10-28 17:40               ` Edgecombe, Rick P
2025-10-24 10:53   ` Huang, Kai
2025-10-24 10:53     ` Huang, Kai
2025-10-24 10:53     ` Huang, Kai
2025-10-28  0:28   ` Huang, Kai
2025-10-28  0:28     ` Huang, Kai
2025-10-28  0:28     ` Huang, Kai
2025-10-28  0:37     ` Sean Christopherson
2025-10-28  0:37       ` Sean Christopherson
2025-10-28  0:37       ` Sean Christopherson
2025-10-28  1:01       ` Huang, Kai
2025-10-28  1:01         ` Huang, Kai
2025-10-28  1:01         ` Huang, Kai
2025-10-17  0:32 ` [PATCH v3 25/25] KVM: TDX: Fix list_add corruption during vcpu_load() Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-17  0:32   ` Sean Christopherson
2025-10-20  8:50   ` Yan Zhao
2025-10-20  8:50     ` Yan Zhao
2025-10-20  8:50     ` Yan Zhao

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=eb6a2ca0-84eb-4770-8300-cd8892eae6ad@linux.intel.com \
    --to=binbin.wu@linux.intel.com \
    --cc=ackerleytng@google.com \
    --cc=anup@brainfault.org \
    --cc=aou@eecs.berkeley.edu \
    --cc=borntraeger@linux.ibm.com \
    --cc=chenhuacai@kernel.org \
    --cc=frankja@linux.ibm.com \
    --cc=imbrenda@linux.ibm.com \
    --cc=ira.weiny@intel.com \
    --cc=kai.huang@intel.com \
    --cc=kas@kernel.org \
    --cc=kvm-riscv@lists.infradead.org \
    --cc=kvm@vger.kernel.org \
    --cc=kvmarm@lists.linux.dev \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-coco@lists.linux.dev \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=linux-riscv@lists.infradead.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=loongarch@lists.linux.dev \
    --cc=maddy@linux.ibm.com \
    --cc=maobibo@loongson.cn \
    --cc=maz@kernel.org \
    --cc=michael.roth@amd.com \
    --cc=oliver.upton@linux.dev \
    --cc=palmer@dabbelt.com \
    --cc=pbonzini@redhat.com \
    --cc=pjw@kernel.org \
    --cc=rick.p.edgecombe@intel.com \
    --cc=seanjc@google.com \
    --cc=vannapurve@google.com \
    --cc=x86@kernel.org \
    --cc=yan.y.zhao@intel.com \
    --cc=zhaotianrui@loongson.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.