[Spice-devel] [spice-server 1/3] channel: Call red_channel_disconnect_if_pending_send() from red_channel_wait_all_sent()

Frediano Ziglio fziglio at redhat.com
Mon Sep 4 14:39:53 UTC 2017


> 
> On Mon, Sep 04, 2017 at 09:04:03AM -0400, Frediano Ziglio wrote:
> > > 
> > > On Mon, Sep 04, 2017 at 06:06:57AM -0400, Frediano Ziglio wrote:
> > > > > 
> > > > > On Fri, Sep 01, 2017 at 06:19:28AM -0400, Frediano Ziglio wrote:
> > > > > > > 
> > > > > > > red_channel_disconnect_if_pending_send() and
> > > > > > > red_channel_wait_all_sent()
> > > > > > > are
> > > > > > > always called together, we can remove one of the 2 methods.
> > > > > > > 
> > > > > > 
> > > > > > Looks a good idea but I think that the function deserve a new name
> > > > > 
> > > > > I would not know how to change the name though :-/
> > > > > 
> > > > 
> > > > Mumble... red_channel_goodbye_bad_guys ? :-)
> > > > More serious red_channel_disconnect_slow_clients.
> > > 
> > > Oh wait, were you talking about
> > > red_channel_disconnect_if_pending_send()?
> > > I thought you wanted to rename red_channel_wait_all_sent()
> > > 
> > > Christophe
> > > 
> > 
> > Yes, red_channel_wait_all_sent. The callers at the end with the
> > new function will get this service, right? The wait is a "detail"
> > that can be documented as the way to detect the slow ones.
> 
> For me the main intent of red_channel_wait_all_sent() is to try as hard
> as possible to flush pending data. The disconnection is just a last
> resort measure if there really is a client which is far too slow to
> flush its queue. So I don't see
> s/red_channel_wait_all_sent/red_channel_disconnect_slow_clients/ as a
> good renaming. I definitely would do
> s/red_channel_disconnect_if_pending_send/red_channel_disconnect_slow_clients/
> though.
> 
> Christophe
> 

I personally expect a wait function to not close a connection.
If I call poll(2) with a timeout the poll does not close the file
descriptor.

Frediano


More information about the Spice-devel mailing list