QEMU does not exit and handle interrupt within translation blocks. it only exits after the translation block is finished. Assuming a translation block is very long, is it possible that QEMU could have exceeded the interrupt's "timing window" and yields unexpected behavior.
The reason I ask is that I am searching for alternatives to QEMU current way of handling interrupt (unlink translation blocks on interrupt). However, an obvious approach - checking for interrupt in every basic block, seems to be too heavy ( too many tb enters/exits ). Maybe checking interrupt in a few basic blocks might be better, but what is a good measure for the number of basic blocks to execute before checking for interrupt ? Thanks Xin