• Avi Kivity's avatar
    KVM: Avoid guest virtual addresses in string pio userspace interface · 039576c0
    Avi Kivity authored
    The current string pio interface communicates using guest virtual addresses,
    relying on userspace to translate addresses and to check permissions.  This
    interface cannot fully support guest smp, as the check needs to take into
    account two pages at one in case an unaligned string transfer straddles a
    page boundary.
    
    Change the interface not to communicate guest addresses at all; instead use
    a buffer page (mmaped by userspace) and do transfers there.  The kernel
    manages the virtual to physical translation and can perform the checks
    atomically by taking the appropriate locks.
    Signed-off-by: default avatarAvi Kivity <avi@qumranet.com>
    039576c0
mmu.c 35.2 KB