qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] sheepdog: add support for connecting to unix do


From: MORITA Kazutaka
Subject: Re: [Qemu-devel] [PATCH] sheepdog: add support for connecting to unix domain socket
Date: Sun, 20 Jan 2013 00:13:38 +0900
User-agent: Wanderlust/2.15.9 (Almost Unreal) Emacs/22.1 Mule/5.0 (SAKAKI)

At Wed, 16 Jan 2013 15:21:09 +0100,
Stefan Hajnoczi wrote:
> 
> On Tue, Jan 15, 2013 at 11:12:40PM +0900, MORITA Kazutaka wrote:
> > +static int set_nodelay(int fd)
> > +{
> > +    int opt = 1;
> > +    return setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, (char *)&opt, 
> > sizeof(opt));
> > +}
> > +
> 
> Please split this into a separate patch that moves the function to
> util/osdep.c and names it socket_set_nodelay().  You can put it below
> socket_set_cork().

Agreed.

> 
> > @@ -804,23 +781,14 @@ static int set_nodelay(int fd)
> >   */
> >  static int get_sheep_fd(BDRVSheepdogState *s)
> >  {
> > -    int ret, fd;
> > +    int fd;
> >  
> > -    fd = connect_to_sdog(s->addr, s->port);
> > +    fd = connect_to_sdog(s->host_spec);
> 
> The patch would be easier to review if you split out a separate patch to
> move from addr/port to host_spec.  Then the final patch can focus just
> on UNIX domain sockets without all the addr/port to host_spec changes.

Agreed.

> 
> >      if (fd < 0) {
> >          error_report("%s", strerror(errno));
> 
> connect_to_sdog() does not set errno and it already reports errors
> internally.  Can this error_report() be dropped?

Yes, I'll remove it.

> 
> >          return fd;
> >      }
> >  
> > -    socket_set_nonblock(fd);
> 
> Where is nonblock being set now that you've removed this?

Oops, I thought that unix_connect and inet_connect return nonblocking
sockets, but it was wrong.

> >  
> > -``sheepdog:<host>:<port>:<vdiname>:<tag>''
> > +using Unix Domain Socket:
> > address@hidden
> > +sheepdog:unix:<domain-socket>:<vdiname>[:<snapid or tag>]
> > address@hidden example
> 
> Please document that <domain-socket> must be an absolute path.  This
> will prevent confusing users who try a relative path.

Okay.

Thanks for your comments, I'll send v2.

Kazutaka



reply via email to

[Prev in Thread] Current Thread [Next in Thread]