public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Sean Christopherson <seanjc@google.com>
To: Yan Zhao <yan.y.zhao@intel.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
	rick.p.edgecombe@intel.com,  binbin.wu@linux.intel.com,
	linux-kernel@vger.kernel.org, kvm@vger.kernel.org
Subject: Re: [PATCH] KVM: x86/mmu: Only zap valid non-mirror roots in kvm_zap_gfn_range()
Date: Mon, 6 Jan 2025 15:49:39 -0800	[thread overview]
Message-ID: <Z3xsE_ixvNiSC4ij@google.com> (raw)
In-Reply-To: <Z2kp11RuI1zJe2t0@yzhao56-desk.sh.intel.com>

On Mon, Dec 23, 2024, Yan Zhao wrote:
> On Sun, Dec 22, 2024 at 08:28:56PM +0100, Paolo Bonzini wrote:
> > On Fri, Nov 15, 2024 at 9:50 AM Yan Zhao <yan.y.zhao@intel.com> wrote:
> > > Sean also suggested making the self-snoop feature a hard dependency for
> > > enabling TDX [2].
> > >
> > > That is because
> > > - TDX shared EPT is able to reuse the memory type specified in VMX's code
> > >   as long as guest MTRRs are not referenced.
> > > - KVM does not call kvm_zap_gfn_range() when attaching/detaching
> > >   non-coherent DMA devices when the CPU have feature self-snoop. [3]
> > >
> > > However, [3] cannot be guaranteed after commit 9d70f3fec144 ("Revert "KVM:
> > > VMX: Always honor guest PAT on CPUs that support self-snoop"), which was
> > > due to a regression with the bochsdrm driver.
> > 
> > I think we should treat honoring of guest PAT like zap-memslot-only,
> > and make it a quirk that TDX disables.  Making it a quirk adds a bit of
> > complexity, but it documents why the code exists and it makes it easy for
> > TDX to disable it.

Belated +1.  Adding a quirk for honoring guest PAT was on my todo list.  A quirk
also allows setups that don't provide a Bochs device to honor guest PAT, which
IIRC is needed for virtio-gpu with a non-snooping graphics device.

> Thanks! Will do in this way after the new year.

Nice!  One oddity to keep in mind when documenting the quirk is that KVM always
honors guest PAT when running on AMD.  :-/

  reply	other threads:[~2025-01-06 23:49 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-15  8:45 [PATCH] KVM: x86/mmu: Only zap valid non-mirror roots in kvm_zap_gfn_range() Yan Zhao
2024-12-22 19:28 ` Paolo Bonzini
2024-12-23  9:13   ` Yan Zhao
2025-01-06 23:49     ` Sean Christopherson [this message]
2025-01-07 14:01       ` Paolo Bonzini
2025-01-08  2:21         ` 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=Z3xsE_ixvNiSC4ij@google.com \
    --to=seanjc@google.com \
    --cc=binbin.wu@linux.intel.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pbonzini@redhat.com \
    --cc=rick.p.edgecombe@intel.com \
    --cc=yan.y.zhao@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