Skip to content
  • malc's avatar
    Fix interrupt exclusion via SSTEP_NOIRQ · e1638bd8
    malc authored
    
    
    Commit #5620 revealed an issue of the SSTEP_NOIRQ masking that was
    applied on all interrupt sources (including internal ones) when single
    stepping through the guest. Due to that commit, we now ended up in an
    infinite loop when CPU_INTERRUPT_EXIT was pending on SSTEP resume. That
    was due to #5620 eating all TBs while CPU_INTERRUPT_EXIT is pending, but
    SSTEP_NOIRQ preventing CPU_INTERRUPT_EXIT to be processed.
    
    What SSTEP_NOIRQ should actually do is to block the delivery of all
    external, guest visible interrupts. With the fix below applied, single
    stepping now works again.
    
    Signed-off-by: default avatarJan Kiszka <jan.kiszka@siemens.com>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5643 c046a42c-6fe2-441c-8c8c-71466251a162
    e1638bd8