linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] KVM: Scalable memslots implementation additional patches
@ 2021-11-26  0:31 Maciej S. Szmigiero
  2021-11-26  0:31 ` [PATCH 1/3] KVM: x86: Avoid overflowing nr_mmu_pages in kvm_arch_commit_memory_region() Maciej S. Szmigiero
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Maciej S. Szmigiero @ 2021-11-26  0:31 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Sean Christopherson, Vitaly Kuznetsov, Wanpeng Li, Jim Mattson,
	Joerg Roedel, Igor Mammedov, kvm, linux-kernel

From: "Maciej S. Szmigiero" <maciej.szmigiero@oracle.com>

While the last "5.5" version of KVM scalable memslots implementation was
merged to kvm/queue some changes from its review round are still pending.

This series contains these changes which still apply to the final form of
the code.

The changes include switching kvm_for_each_memslot_in_gfn_range() to use
iterators.
However, I've dropped kvm_for_each_memslot_in_hva_range() rework to
use dedicated iterators since the existing implementation was already
returning only strictly overlapping memslots and it was already using
interval tree iterators.
The code there is also self-contained and very simple.

The code was tested on x86 with KASAN on and booted various guests
successfully (including nested ones; with TDP MMU both enabled and disabled).

There were some VMX APICv warnings during these tests but these look
related to the latest VMX PI changes rather than memslots handling code.

 arch/x86/include/asm/kvm_host.h |   2 +-
 arch/x86/kvm/mmu/mmu.c          |  11 ++--
 arch/x86/kvm/x86.c              |   3 +-
 include/linux/kvm_host.h        | 104 ++++++++++++++++++++------------
 virt/kvm/kvm_main.c             |  25 +++-----
 5 files changed, 83 insertions(+), 62 deletions(-)


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2021-11-29 22:44 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-26  0:31 [PATCH 0/3] KVM: Scalable memslots implementation additional patches Maciej S. Szmigiero
2021-11-26  0:31 ` [PATCH 1/3] KVM: x86: Avoid overflowing nr_mmu_pages in kvm_arch_commit_memory_region() Maciej S. Szmigiero
2021-11-29 21:03   ` Sean Christopherson
2021-11-26  0:31 ` [PATCH 2/3] KVM: Use atomic_long_cmpxchg() instead of an open-coded variant Maciej S. Szmigiero
2021-11-26 10:34   ` Paolo Bonzini
2021-11-26  0:31 ` [PATCH 3/3] KVM: Make kvm_for_each_memslot_in_gfn_range() strict and use iterators Maciej S. Szmigiero
2021-11-26 10:35 ` [PATCH 0/3] KVM: Scalable memslots implementation additional patches Paolo Bonzini
2021-11-26 13:18   ` Maciej S. Szmigiero
2021-11-26 13:19     ` Paolo Bonzini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).