• Carsten Otte's avatar
    KVM: s390: Fix race condition in kvm_s390_handle_wait · e52b2af5
    Carsten Otte authored
    The call to add_timer was issued before local_int.lock was taken and before
    timer_due was set to 0. If the timer expires before the lock is being taken,
    the timer function will set timer_due to 1 and exit before the vcpu falls
    asleep. Depending on other external events, the vcpu might sleep forever.
    This fix pulls setting timer_due to the beginning of the function before
    add_timer, which ensures correct behavior.
    Signed-off-by: default avatarCarsten Otte <cotte@de.ibm.com>
    Signed-off-by: default avatarAvi Kivity <avi@qumranet.com>
    e52b2af5
interrupt.c 15.1 KB