diff options
author | Ben Gardon <[email protected]> | 2021-02-02 10:57:20 -0800 |
---|---|---|
committer | Paolo Bonzini <[email protected]> | 2021-02-04 05:27:41 -0500 |
commit | 1af4a96025b33587ca953c7ef12a1b20c6e70412 (patch) | |
tree | 4807a0d90ad215b5454cc7883247517653362455 /lib/mpi/mpi-mod.c | |
parent | ed5e484b79e8a9b8be714bd85b6fc70bd6dc99a7 (diff) |
KVM: x86/mmu: Yield in TDU MMU iter even if no SPTES changed
Given certain conditions, some TDP MMU functions may not yield
reliably / frequently enough. For example, if a paging structure was
very large but had few, if any writable entries, wrprot_gfn_range
could traverse many entries before finding a writable entry and yielding
because the check for yielding only happens after an SPTE is modified.
Fix this issue by moving the yield to the beginning of the loop.
Fixes: a6a0b05da9f3 ("kvm: x86/mmu: Support dirty logging for the TDP MMU")
Reviewed-by: Peter Feiner <[email protected]>
Signed-off-by: Ben Gardon <[email protected]>
Message-Id: <[email protected]>
Signed-off-by: Paolo Bonzini <[email protected]>
Diffstat (limited to 'lib/mpi/mpi-mod.c')
0 files changed, 0 insertions, 0 deletions