mbox series

[0/4] Fix RCU warnings in TDP MMU

Message ID 20210311231658.1243953-1-bgardon@google.com (mailing list archive)
Headers show
Series Fix RCU warnings in TDP MMU | expand

Message

Ben Gardon March 11, 2021, 11:16 p.m. UTC
The Linux Test Robot found a few RCU warnings in the TDP MMU:
https://www.spinics.net/lists/kernel/msg3845500.html
https://www.spinics.net/lists/kernel/msg3845521.html

Fix these warnings and cleanup a hack in tdp_mmu_iter_cond_resched.

Tested by compiling as suggested in the test robot report and confirmed that
the warnings go away with this series applied. Also ran kvm-unit-tests on an
Intel Skylake machine with the TDP MMU enabled and confirmed that the series
introduced no new failures.

Ben Gardon (4):
  KVM: x86/mmu: Fix RCU usage in handle_removed_tdp_mmu_page
  KVM: x86/mmu: Fix RCU usage for tdp_iter_root_pt
  KVM: x86/mmu: Fix RCU usage when atomically zapping SPTEs
  KVM: x86/mmu: Factor out tdp_iter_return_to_root

 arch/x86/kvm/mmu/tdp_iter.c | 34 +++++++++++++++++++++++++---------
 arch/x86/kvm/mmu/tdp_iter.h |  3 ++-
 arch/x86/kvm/mmu/tdp_mmu.c  | 19 +++++++++++--------
 3 files changed, 38 insertions(+), 18 deletions(-)

Comments

Paolo Bonzini March 12, 2021, 5:01 p.m. UTC | #1
On 12/03/21 00:16, Ben Gardon wrote:
> The Linux Test Robot found a few RCU warnings in the TDP MMU:
> https://www.spinics.net/lists/kernel/msg3845500.html
> https://www.spinics.net/lists/kernel/msg3845521.html
> 
> Fix these warnings and cleanup a hack in tdp_mmu_iter_cond_resched.
> 
> Tested by compiling as suggested in the test robot report and confirmed that
> the warnings go away with this series applied. Also ran kvm-unit-tests on an
> Intel Skylake machine with the TDP MMU enabled and confirmed that the series
> introduced no new failures.
> 
> Ben Gardon (4):
>    KVM: x86/mmu: Fix RCU usage in handle_removed_tdp_mmu_page
>    KVM: x86/mmu: Fix RCU usage for tdp_iter_root_pt
>    KVM: x86/mmu: Fix RCU usage when atomically zapping SPTEs
>    KVM: x86/mmu: Factor out tdp_iter_return_to_root
> 
>   arch/x86/kvm/mmu/tdp_iter.c | 34 +++++++++++++++++++++++++---------
>   arch/x86/kvm/mmu/tdp_iter.h |  3 ++-
>   arch/x86/kvm/mmu/tdp_mmu.c  | 19 +++++++++++--------
>   3 files changed, 38 insertions(+), 18 deletions(-)
> 

Mostly good but Sean's suggestion in patch 2 is indeed better.  There's 
enough changes that I'll wait for a v2 from you.  Thanks!

Paolo