• Paul Mackerras's avatar
    KVM: PPC: Book3S HV: Don't let VCPU sleep if it has a doorbell pending · 1da4e2f4
    Paul Mackerras authored
    It is possible, through a narrow race condition, for a VCPU to exit
    the guest with a H_CEDE hypercall while it has a doorbell interrupt
    pending.  In this case, the H_CEDE should return immediately, but in
    fact it puts the VCPU to sleep until some other interrupt becomes
    pending or a prod is received (via another VCPU doing H_PROD).
    
    This fixes it by checking the DPDES (Directed Privileged Doorbell
    Exception Status) bit for the thread along with the other interrupt
    pending bits.
    Signed-off-by: default avatarPaul Mackerras <paulus@ozlabs.org>
    1da4e2f4
book3s_hv.c 104 KB