diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2022-11-17 12:25:02 -0500 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2022-11-18 11:30:12 -0500 |
commit | 6c7b2202e4d11572ab23a89aeec49005b94bb966 (patch) | |
tree | b47d8b0b67e8e9db088088efcfd969a48878832c /arch/x86/kvm/svm/nested.c | |
parent | 771a579c6e74f305eff97752d91e9b05c4e46323 (diff) | |
download | linux-6c7b2202e4d11572ab23a89aeec49005b94bb966.tar.gz linux-6c7b2202e4d11572ab23a89aeec49005b94bb966.tar.bz2 linux-6c7b2202e4d11572ab23a89aeec49005b94bb966.zip |
KVM: x86: avoid memslot check in NX hugepage recovery if it cannot succeed
Since gfn_to_memslot() is relatively expensive, it helps to
skip it if it the memslot cannot possibly have dirty logging
enabled. In order to do this, add to struct kvm a counter
of the number of log-page memslots. While the correct value
can only be read with slots_lock taken, the NX recovery thread
is content with using an approximate value. Therefore, the
counter is an atomic_t.
Based on https://lore.kernel.org/kvm/20221027200316.2221027-2-dmatlack@google.com/
by David Matlack.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch/x86/kvm/svm/nested.c')
0 files changed, 0 insertions, 0 deletions