On Thu, Dec 09, 2010 at 04:09:20PM -0700, Eric Blake wrote: > On 12/01/2010 10:26 AM, Daniel P. Berrange wrote: > > + > > + if (virNetServerProgramDispatch(prog, > > + srv, > > + job->client, > > + job->msg) < 0) { > > + job->msg = NULL; > > + goto error; > > + } > > Should this call be run while the virNetServerLock is still held, or > should we drop and reacquire the lock to allow other virNetServer > threads to make progress during the arbitrarily long dispatch? Yes, the new posting does proper lock drop+reacquire now. > > +#if 0 > > + reprocess: > > + for (i = 0 ; i < srv->nclients ; i++) { > > + int inactive; > > Any reason to keep this block of code, since you commented it out? Yep, I uncommented it now and made it work > > +static void > > +virNetServerProgramFormatError(virNetServerProgramPtr prog, > > + void *rerr, > > + int code, > > + const char *fmt, > > + ...) > > +{ > > + va_list args; > > + char msgbuf[1024]; > > + char *msg = msgbuf; > > + > > + va_start(args, fmt); > > + vsnprintf(msgbuf, sizeof msgbuf, fmt, args); > > Should we do something special if the message got truncated at > sizeof(msgbuf)? This and all similar methods have gone. We use normal internal error reporting APIs in libvirtd now. Daniel -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list