diff options
author | Sean Christopherson <seanjc@google.com> | 2025-06-10 15:57:32 -0700 |
---|---|---|
committer | Sean Christopherson <seanjc@google.com> | 2025-06-20 13:07:34 -0700 |
commit | 52f82177429e0631afebb676e57d05e621153b0d (patch) | |
tree | fe32dddedb41e22bb4568ccca3f0d20065710acf /tools/perf/scripts/python/export-to-sqlite.py | |
parent | 7fe0578041188d63207f17335e8c0d10e19c7515 (diff) |
KVM: nSVM: Access MSRPM in 4-byte chunks only for merging L0 and L1 bitmaps
Access the MSRPM using u32/4-byte chunks (and appropriately adjusted
offsets) only when merging L0 and L1 bitmaps as part of emulating VMRUN.
The only reason to batch accesses to MSRPMs is to avoid the overhead of
uaccess operations (e.g. STAC/CLAC and bounds checks) when reading L1's
bitmap pointed at by vmcb12. For all other uses, either per-bit accesses
are more than fast enough (no uaccess), or KVM is only accessing a single
bit (nested_svm_exit_handled_msr()) and so there's nothing to batch.
In addition to (hopefully) documenting the uniqueness of the merging code,
restricting chunked access to _just_ the merging code will allow for
increasing the chunk size (to unsigned long) with minimal risk.
Link: https://lore.kernel.org/r/20250610225737.156318-28-seanjc@google.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
Diffstat (limited to 'tools/perf/scripts/python/export-to-sqlite.py')
0 files changed, 0 insertions, 0 deletions