[Spice-devel] [PATCH] server: don't call reds_stream_free from worker thread context
Alon Levy
alevy at redhat.com
Mon Sep 5 03:47:00 PDT 2011
On Mon, Sep 05, 2011 at 11:02:43AM +0200, Gerd Hoffmann wrote:
> Hi,
>
> >Hi,
> >RED_WORKER_MESSAGE_DISPLAY_DISCONNECT is not the only place that
> >triggers red_disconnect_channel (and as a result,
> >reds_stream_free(dispatcher->stream)). red_disconnect_channel is called
> >also when there is an error upon receive/send and also when timeouts
> >related to the client occur (e.g., in flush_display_commands).
>
> Ok.
>
> >We probably better make the dispatcher bi-directional, i.e., not only
> >push messages to the worker, but also listen.
>
> That sounds like a non-trivial thing.
>
> What does the master branch here btw? I had a brief look and saw
> that the code looks quite different here (probably due to the
> multiclient work).
>
I verified it still calls reds_stream_free from the worker thread, only
now the call itself is done in red_channel.c (via red_channel_disconnect
or something like that), which is called from red_worker.c
> cheers,
> Gerd
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
More information about the Spice-devel
mailing list