On 03/10/2011 02:54 PM, Corentin Chary wrote:
> > You can use a bottom half for this instead of a special socket. Signaling
> > a bottom half is async-signal- and thread-safe.
>
> Bottom halves are thread safe?
>
> I don't think so.
The bottom halves API is not thread safe, but calling
qemu_bh_schedule_idle()
Not _idle please.
in another thread *seems* to be safe (here, it
would be protected from qemu_bh_delete() by vnc_lock_output()).
If it weren't protected against qemu_bh_delete, you would have already
the same race between writing to the socket and closing it in another
thread.
Paolo