so it is not possible to have a longjmp happening while an emulated
cpu is in the middle of translating code ( i.e. in frontend or tcg).

Xin


On Mon, Apr 23, 2012 at 12:02 PM, Peter Maydell
<peter.mayd...@linaro.org> wrote:
> On 23 April 2012 01:06, Xin Tong <xerox.time.t...@gmail.com> wrote:
>> QEMU uses this very hard to understand setjmp and longjmp to handle
>> asynchronous interrupt. what i do not understand is that say one of
>> the process is doing a context switching in the guest os. tlb_flush
>> gets called, what if in the middle of tlb_flush, an interrupt comes in
>> ( longjmp executed ).
>
> We don't do a longjmp for interrupts. Mostly they're used for
> exceptions (eg "memory access faulted"), so they only happen
> in fairly restricted contexts where it is safe to longjmp.
>
> -- PMM

Reply via email to