• Sean Christopherson's avatar
    KVM: x86: Suppress MMIO that is triggered during task switch emulation · 2a1fc7dc
    Sean Christopherson authored
    Explicitly suppress userspace emulated MMIO exits that are triggered when
    emulating a task switch as KVM doesn't support userspace MMIO during
    complex (multi-step) emulation.  Silently ignoring the exit request can
    result in the WARN_ON_ONCE(vcpu->mmio_needed) firing if KVM exits to
    userspace for some other reason prior to purging mmio_needed.
    
    See commit 0dc90226 ("KVM: x86: Suppress pending MMIO write exits if
    emulator detects exception") for more details on KVM's limitations with
    respect to emulated MMIO during complex emulator flows.
    
    Reported-by: syzbot+2fb9f8ed752c01bc9a3f@syzkaller.appspotmail.com
    Signed-off-by: default avatarSean Christopherson <seanjc@google.com>
    Message-ID: <20240712144841.1230591-1-seanjc@google.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    2a1fc7dc
x86.c 375 KB