Hi,

> > +    qemu_bh_cancel(c->shutdown_bh);
> 
> Looks like a potential race. Quote from the API doc of qemu_bh_cancel():
> 
>       "While cancellation itself is also wait-free and thread-safe, it can of 
>         
>       course race with the loop that executes bottom halves unless you are 
>       holding the iothread mutex.  This makes it mostly useless if you are 
> not 
>       holding the mutex."

Should not be a problem, all auto backend code should only be called
while qemu holds the iothread mutex.  With the exception of the shutdown
handler which jack might call from signal context (which is why we need
the BH in the first place).

take care,
  Gerd


Reply via email to