• Ben Gardon's avatar
    kvm: x86/mmu: NX largepage recovery for TDP MMU · 29cf0f50
    Ben Gardon authored
    When KVM maps a largepage backed region at a lower level in order to
    make it executable (i.e. NX large page shattering), it reduces the TLB
    performance of that region. In order to avoid making this degradation
    permanent, KVM must periodically reclaim shattered NX largepages by
    zapping them and allowing them to be rebuilt in the page fault handler.
    
    With this patch, the TDP MMU does not respect KVM's rate limiting on
    reclaim. It traverses the entire TDP structure every time. This will be
    addressed in a future patch.
    
    Tested by running kvm-unit-tests and KVM selftests on an Intel Haswell
    machine. This series introduced no new failures.
    
    This series can be viewed in Gerrit at:
    	https://linux-review.googlesource.com/c/virt/kvm/kvm/+/2538Signed-off-by: default avatarBen Gardon <bgardon@google.com>
    Message-Id: <20201014182700.2888246-21-bgardon@google.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    29cf0f50
tdp_mmu.c 31.3 KB