mbox series

[GIT,PULL] KVM: x86: MMU changes for 6.8

Message ID 20240104193303.3175844-6-seanjc@google.com (mailing list archive)
State New, archived
Headers show
Series [GIT,PULL] KVM: x86: MMU changes for 6.8 | expand

Pull-request

https://github.com/kvm-x86/linux.git tags/kvm-x86-mmu-6.8

Message

Sean Christopherson Jan. 4, 2024, 7:33 p.m. UTC
Two minor fixes from David, plus your series to clean up the "bool shared" mess.

The following changes since commit e9e60c82fe391d04db55a91c733df4a017c28b2f:

  selftests/kvm: fix compilation on non-x86_64 platforms (2023-11-21 11:58:25 -0500)

are available in the Git repository at:

  https://github.com/kvm-x86/linux.git tags/kvm-x86-mmu-6.8

for you to fetch changes up to e59f75de4e501e87de7743fec29dd247a6ae6cd3:

  KVM: x86/mmu: fix comment about mmu_unsync_pages_lock (2023-12-01 07:52:09 -0800)

----------------------------------------------------------------
KVM x86 MMU changes for 6.8:

 - Fix a relatively benign off-by-one error when splitting huge pages during
   CLEAR_DIRTY_LOG.

 - Fix a bug where KVM could incorrectly test-and-clear dirty bits in non-leaf
   TDP MMU SPTEs if a racing thread replaces a huge SPTE with a non-huge SPTE.

 - Relax the TDP MMU's lockdep assertions related to holding mmu_lock for read
   versus write so that KVM doesn't pass "bool shared" all over the place just
   to have precise assertions in paths that don't actually care about whether
   the caller is a reader or a writer.

----------------------------------------------------------------
David Matlack (2):
      KVM: x86/mmu: Fix off-by-1 when splitting huge pages during CLEAR
      KVM: x86/mmu: Check for leaf SPTE when clearing dirty bit in the TDP MMU

Paolo Bonzini (4):
      KVM: x86/mmu: remove unnecessary "bool shared" argument from functions
      KVM: x86/mmu: remove unnecessary "bool shared" argument from iterators
      KVM: x86/mmu: always take tdp_mmu_pages_lock
      KVM: x86/mmu: fix comment about mmu_unsync_pages_lock

 Documentation/virt/kvm/locking.rst |  7 ++-
 arch/x86/include/asm/kvm_host.h    | 11 +++--
 arch/x86/kvm/mmu/mmu.c             |  8 ++--
 arch/x86/kvm/mmu/tdp_mmu.c         | 95 +++++++++++++++++---------------------
 arch/x86/kvm/mmu/tdp_mmu.h         |  3 +-
 5 files changed, 57 insertions(+), 67 deletions(-)