[PATCH v3 0/8] x86, KVM: Optimize SEV cache flushing
Sean Christopherson
seanjc at google.com
Wed Jul 9 16:25:35 UTC 2025
On Thu, May 22, 2025, Sean Christopherson wrote:
> This is the combination of Kevin's WBNOINVD series[1] with Zheyun's targeted
> flushing series[2]. The combined goal is to use WBNOINVD instead of WBINVD
> when doing cached maintenance to prevent data corruption due to C-bit aliasing,
> and to reduce the number of cache invalidations by only performing flushes on
> CPUs that have entered the relevant VM since the last cache flush.
>
> All of the non-KVM patches are frontloaded and based on v6.15-rc7, so that
> they can go through the tip tree (in a stable branch, please :-) ).
Tip tree folks, any feedback/thoughts on this series (patches 1-4 in particular)?
It'd be nice to get this into 6.17, and I'd really like land it by 6.18 at the
latest.
> Kevin Loughlin (2):
> x86, lib: Add WBNOINVD helper functions
> KVM: SEV: Prefer WBNOINVD over WBINVD for cache maintenance efficiency
>
> Sean Christopherson (3):
> drm/gpu: Remove dead checks on wbinvd_on_all_cpus()'s return value
> x86, lib: Drop the unused return value from wbinvd_on_all_cpus()
> KVM: x86: Use wbinvd_on_cpu() instead of an open-coded equivalent
>
> Zheyun Shen (3):
> x86, lib: Add wbinvd and wbnoinvd helpers to target multiple CPUs
> KVM: SVM: Remove wbinvd in sev_vm_destroy()
> KVM: SVM: Flush cache only on CPUs running SEV guest
>
> arch/x86/include/asm/smp.h | 23 +++++++-
> arch/x86/include/asm/special_insns.h | 32 ++++++++++-
> arch/x86/kvm/svm/sev.c | 85 +++++++++++++++++++---------
> arch/x86/kvm/svm/svm.h | 1 +
> arch/x86/kvm/x86.c | 11 +---
> arch/x86/lib/cache-smp.c | 26 ++++++++-
> drivers/gpu/drm/drm_cache.c | 9 +--
> 7 files changed, 140 insertions(+), 47 deletions(-)
>
>
> base-commit: a5806cd506af5a7c19bcd596e4708b5c464bfd21
> --
> 2.49.0.1151.ga128411c76-goog
>
More information about the dri-devel
mailing list