• Paolo Bonzini's avatar
    KVM: x86: use kvm_read_guest_page for emulator accesses · 44583cba
    Paolo Bonzini authored
    Emulator accesses are always done a page at a time, either by the emulator
    itself (for fetches) or because we need to query the MMU for address
    translations.  Speed up these accesses by using kvm_read_guest_page
    and, in the case of fetches, by inlining kvm_read_guest_virt_helper and
    dropping the loop around kvm_read_guest_page.
    
    This final tweak saves 30-100 more clock cycles (4-10%), bringing the
    count (as measured by kvm-unit-tests) down to 720-1100 clock cycles on
    a Sandy Bridge Xeon host, compared to 2300-3200 before the whole series
    and 925-1700 after the first two low-hanging fruit changes.
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    44583cba
x86.c 191 KB