From: Yan Zhao <yan.y.zhao@intel.com>
To: Binbin Wu <binbin.wu@linux.intel.com>
Cc: Sean Christopherson <seanjc@google.com>,
Paolo Bonzini <pbonzini@redhat.com>,
Kiryl Shutsemau <kas@kernel.org>,
Rick Edgecombe <rick.p.edgecombe@intel.com>,
Dave Hansen <dave.hansen@linux.intel.com>, <kvm@vger.kernel.org>,
<x86@kernel.org>, <linux-coco@lists.linux.dev>,
<linux-kernel@vger.kernel.org>,
James Houghton <jthoughton@google.com>,
Xiaoyao Li <xiaoyao.li@intel.com>,
Ackerley Tng <ackerleytng@google.com>,
Vishal Annapurve <vannapurve@google.com>,
Sashiko Bot <sashiko-bot@kernel.org>
Subject: Re: [PATCH v2 3/3] KVM: TDX: Ratelimit the "EPT Violation on pending acceptance page" warning
Date: Sat, 10 Oct 2026 10:37:54 +0800 [thread overview]
Message-ID: <asmlAodYOm2y9uRL@yzhao56-desk.sh.intel.com> (raw)
In-Reply-To: <2036b58e-d2cb-4992-97d4-cb136bb0a387@linux.intel.com>
On Thu, Oct 08, 2026 at 04:04:06PM +0800, Binbin Wu wrote:
> On 10/8/2026 11:08 AM, Yan Zhao wrote:
> > On Tue, Sep 29, 2026 at 05:11:27PM -0700, Sean Christopherson wrote:
> >> Ratelimit TDX's kernel logging when a guest accesses an unaccepted page and
> >> has opted to disable EPT Violation #VEs for unaccepted accesses, as the
> >> pr_warn() is trivial for a misbehaving userspace to trigger.
> > Since the pr_warn() is previously accompanied by a kvm_vm_dead(), which kicks
> > off all vCPUs and disallows re-entry, a misbehaving guest should not be able to
> > trigger pr_warn() more than once.
> > Or are you concerned about the pr_warn() being triggered by multiple misbehaving
> > guests? But would it be better to print for each guest?
>
> Sashiko reported the issue due to the change introduced in the patch 2.
>
> Will this change allow a malicious or buggy userspace VMM to flood the host
> kernel log?
>
> By replacing kvm_vm_dead() with KVM_REQ_TRIPLE_FAULT and returning 1, KVM
> will clear the request during vcpu_enter_guest() and exit to userspace with
> KVM_EXIT_SHUTDOWN. If the VMM ignores this exit and repeatedly calls KVM_RUN
> without resetting the vCPU, KVM will immediately re-enter the guest.
>
> In this case, is the Fixes tag pointing to e6a85781f783 needed?
Upon further reflection, in an extreme scenario where 100 vCPUs access the
unaccepted page simultaneously, pr_warn() could theoretically be invoked for
100 times.
So pr_warn_ratelimited() is still the better choice.
So, Reviewed-by: Yan Zhao <yan.y.zhao@intel.com>
> >> Fixes: e6a85781f783 ("KVM: TDX: Detect unexpected SEPT violations due to pending SPTEs")
> >> Cc: stable@vger.kernel.org
> >> Reported-by: Sashiko Bot <sashiko-bot@kernel.org>
> >> Closes: https://lore.kernel.org/all/20260923164348.2DB2D1F000FF@smtp.kernel.org
> >> Signed-off-by: Sean Christopherson <seanjc@google.com>
> >> ---
> >> arch/x86/kvm/vmx/tdx.c | 4 ++--
> >> 1 file changed, 2 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/arch/x86/kvm/vmx/tdx.c b/arch/x86/kvm/vmx/tdx.c
> >> index e3723f1222fc..4cac43299851 100644
> >> --- a/arch/x86/kvm/vmx/tdx.c
> >> +++ b/arch/x86/kvm/vmx/tdx.c
> >> @@ -1937,8 +1937,8 @@ static int tdx_handle_ept_violation(struct kvm_vcpu *vcpu)
> >>
> >> if (vt_is_tdx_private_gpa(vcpu->kvm, gpa)) {
> >> if (tdx_is_sept_violation_unexpected_pending(vcpu)) {
> >> - pr_warn("Guest access before accepting 0x%llx on vCPU %d\n",
> >> - gpa, vcpu->vcpu_id);
> >> + pr_warn_ratelimited("Guest access before accepting 0x%llx on vCPU %d\n",
> >> + gpa, vcpu->vcpu_id);
> >> kvm_prepare_shutdown_exit(vcpu);
> >> return 0;
> >> }
> >> --
> >> 2.56.0.rc1.315.gc6ed9934b7-goog
> >>
> >
>
next prev parent reply other threads:[~2026-10-10 2:38 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-30 0:11 [PATCH v2 0/3] KVM: TDX: Syntehsize SHUTDOWN on unhandled EPT Violation Sean Christopherson
2026-09-30 0:11 ` [PATCH v2 1/3] KVM: x86: Add a helper to prepare vcpu->run for a SHUTDOWN exit to userspace Sean Christopherson
2026-09-30 3:04 ` Binbin Wu
2026-09-30 0:11 ` [PATCH v2 2/3] KVM: TDX: Synthesize SHUTDOWN instead of returning -EIO on unhandled EPT violation Sean Christopherson
2026-09-30 4:58 ` Binbin Wu
2026-10-10 3:28 ` Yan Zhao
2026-09-30 0:11 ` [PATCH v2 3/3] KVM: TDX: Ratelimit the "EPT Violation on pending acceptance page" warning Sean Christopherson
2026-09-30 5:01 ` Binbin Wu
2026-10-08 3:08 ` Yan Zhao
2026-10-08 8:04 ` Binbin Wu
2026-10-10 2:37 ` Yan Zhao [this message]
2026-09-30 0:32 ` [PATCH v2 0/3] KVM: TDX: Syntehsize SHUTDOWN on unhandled EPT Violation Edgecombe, Rick P
2026-09-30 0:55 ` Sean Christopherson
2026-10-08 8:03 ` Yan Zhao
2026-10-09 20:58 ` Sean Christopherson
2026-10-10 2:29 ` 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=asmlAodYOm2y9uRL@yzhao56-desk.sh.intel.com \
--to=yan.y.zhao@intel.com \
--cc=ackerleytng@google.com \
--cc=binbin.wu@linux.intel.com \
--cc=dave.hansen@linux.intel.com \
--cc=jthoughton@google.com \
--cc=kas@kernel.org \
--cc=kvm@vger.kernel.org \
--cc=linux-coco@lists.linux.dev \
--cc=linux-kernel@vger.kernel.org \
--cc=pbonzini@redhat.com \
--cc=rick.p.edgecombe@intel.com \
--cc=sashiko-bot@kernel.org \
--cc=seanjc@google.com \
--cc=vannapurve@google.com \
--cc=x86@kernel.org \
--cc=xiaoyao.li@intel.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®