From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:55671) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hG4KU-0005BM-SI for qemu-devel@nongnu.org; Mon, 15 Apr 2019 12:19:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hG4KP-0002mF-Pl for qemu-devel@nongnu.org; Mon, 15 Apr 2019 12:19:32 -0400 Received: from mx1.redhat.com ([209.132.183.28]:39922) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hG4KJ-0002VE-M2 for qemu-devel@nongnu.org; Mon, 15 Apr 2019 12:19:27 -0400 Date: Mon, 15 Apr 2019 17:19:13 +0100 From: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= Message-ID: <20190415161913.GQ5718@redhat.com> Reply-To: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= References: <20190415160609.24240-1-marcandre.lureau@redhat.com> <20190415160809.GP5718@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH v2] socket: allow wait=false for client socket List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?utf-8?Q?Marc-Andr=C3=A9?= Lureau Cc: Paolo Bonzini , QEMU On Mon, Apr 15, 2019 at 06:16:33PM +0200, Marc-Andr=C3=A9 Lureau wrote: > On Mon, Apr 15, 2019 at 6:08 PM Daniel P. Berrang=C3=A9 wrote: > > > > On Mon, Apr 15, 2019 at 06:06:09PM +0200, Marc-Andr=C3=A9 Lureau wrot= e: > > > Commit 767abe7 ("chardev: forbid 'wait' option with client sockets"= ) > > > is a bit too strict. Current libvirt always set wait=3Dfalse, and w= ill > > > thus fail to add client chardev. > > > > > > Make the code more permissive, allowing wait=3Dfalse with client so= cket > > > chardevs. > > > > > > Fixes: 767abe7f49e8be14d29da5db3527817b5d696a52 > > > Cc: Daniel P. Berrang=C3=A9 > > > Signed-off-by: Marc-Andr=C3=A9 Lureau > > > --- > > > chardev/char-socket.c | 10 +++++++--- > > > 1 file changed, 7 insertions(+), 3 deletions(-) > > > > > > diff --git a/chardev/char-socket.c b/chardev/char-socket.c > > > index 3916505d67..ebc1adb83e 100644 > > > --- a/chardev/char-socket.c > > > +++ b/chardev/char-socket.c > > > @@ -1263,9 +1263,13 @@ static bool qmp_chardev_validate_socket(Char= devSocket *sock, > > > return false; > > > } > > > if (sock->has_wait) { > > > - error_setg(errp, "%s", > > > - "'wait' option is incompatible with " > > > - "socket in client connect mode"); > > > + warn_report("'wait' option is deprecated with " > > > + "socket in client connect mode"); > > > + if (sock->wait) { > > > + error_setg(errp, "%s", > > > + "'wait' option is incompatible with " > > > + "socket in client connect mode"); > > > + } > > > return false; > > > } > > > } > > > > NB, it should also update qemu-deprecated.texi >=20 > Is that clear enough? >=20 > diff --git a/qemu-deprecated.texi b/qemu-deprecated.texi > index 2219386769..0f53d1c228 100644 > --- a/qemu-deprecated.texi > +++ b/qemu-deprecated.texi > @@ -105,6 +105,12 @@ details. > The ``query-events'' command has been superseded by the more powerful > and accurate ``query-qmp-schema'' command. >=20 > +@subsection chardev client socket with 'wait' option (since 4.0) > + > +The ``chardev-add'' and ``chardev-change'' should not be used to > +create client sockets with a ``wait'' field, which is reserved for > +server sockets only. It applies to command line syntax too, so I would just generalize that a little to "Character devices creating sockets in client mode should not specify the 'wait' field, which is only applicable to sockets in server mode" Regards, Daniel --=20 |: https://berrange.com -o- https://www.flickr.com/photos/dberran= ge :| |: https://libvirt.org -o- https://fstop138.berrange.c= om :| |: https://entangle-photo.org -o- https://www.instagram.com/dberran= ge :|