From: "Daniel P. Berrangé" <berrange@redhat.com>
To: "Marc-André Lureau" <marcandre.lureau@redhat.com>
Cc: qemu-devel@nongnu.org, Paolo Bonzini <pbonzini@redhat.com>,
"reviewer:Incompatible changes" <libvir-list@redhat.com>
Subject: Re: [Qemu-devel] [PATCH v3] socket: allow wait=false for client socket
Date: Mon, 15 Apr 2019 17:27:25 +0100 [thread overview]
Message-ID: <20190415162725.GR5718@redhat.com> (raw)
In-Reply-To: <20190415162129.30511-1-marcandre.lureau@redhat.com>
On Mon, Apr 15, 2019 at 06:21:29PM +0200, Marc-André Lureau wrote:
> Commit 767abe7 ("chardev: forbid 'wait' option with client sockets")
> is a bit too strict. Current libvirt always set wait=false, and will
> thus fail to add client chardev.
>
> Make the code more permissive, allowing wait=false with client socket
> chardevs. Deprecate usage of 'wait' with client sockets.
>
> Fixes: 767abe7f49e8be14d29da5db3527817b5d696a52
> Cc: Daniel P. Berrangé <berrange@redhat.com>
> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> ---
> chardev/char-socket.c | 10 +++++++---
> qemu-deprecated.texi | 5 +++++
> 2 files changed, 12 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(ChardevSocket *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;
Oh wait, don't you need to put the 'return false' inside the
if branch above, otherwise we're still failing validation.
> }
> }
> diff --git a/qemu-deprecated.texi b/qemu-deprecated.texi
> index 2219386769..842e71b11d 100644
> --- a/qemu-deprecated.texi
> +++ b/qemu-deprecated.texi
> @@ -105,6 +105,11 @@ details.
> The ``query-events'' command has been superseded by the more powerful
> and accurate ``query-qmp-schema'' command.
>
> +@subsection chardev client socket with 'wait' option (since 4.0)
> +
> +Character devices creating sockets in client mode should not specify
> +the 'wait' field, which is only applicable to sockets in server mode
> +
> @section Human Monitor Protocol (HMP) commands
>
> @subsection The hub_id parameter of 'hostfwd_add' / 'hostfwd_remove' (since 3.1)
> --
> 2.21.0.313.ge35b8cb8e2
>
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
WARNING: multiple messages have this Message-ID (diff)
From: "Daniel P. Berrangé" <berrange@redhat.com>
To: "Marc-André Lureau" <marcandre.lureau@redhat.com>
Cc: "reviewer:Incompatible changes" <libvir-list@redhat.com>,
Paolo Bonzini <pbonzini@redhat.com>,
qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH v3] socket: allow wait=false for client socket
Date: Mon, 15 Apr 2019 17:27:25 +0100 [thread overview]
Message-ID: <20190415162725.GR5718@redhat.com> (raw)
Message-ID: <20190415162725.cqvnxqCIew51ZRAnKnFKC44H6EBVT_0QKuVWKAO2eJg@z> (raw)
In-Reply-To: <20190415162129.30511-1-marcandre.lureau@redhat.com>
On Mon, Apr 15, 2019 at 06:21:29PM +0200, Marc-André Lureau wrote:
> Commit 767abe7 ("chardev: forbid 'wait' option with client sockets")
> is a bit too strict. Current libvirt always set wait=false, and will
> thus fail to add client chardev.
>
> Make the code more permissive, allowing wait=false with client socket
> chardevs. Deprecate usage of 'wait' with client sockets.
>
> Fixes: 767abe7f49e8be14d29da5db3527817b5d696a52
> Cc: Daniel P. Berrangé <berrange@redhat.com>
> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> ---
> chardev/char-socket.c | 10 +++++++---
> qemu-deprecated.texi | 5 +++++
> 2 files changed, 12 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(ChardevSocket *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;
Oh wait, don't you need to put the 'return false' inside the
if branch above, otherwise we're still failing validation.
> }
> }
> diff --git a/qemu-deprecated.texi b/qemu-deprecated.texi
> index 2219386769..842e71b11d 100644
> --- a/qemu-deprecated.texi
> +++ b/qemu-deprecated.texi
> @@ -105,6 +105,11 @@ details.
> The ``query-events'' command has been superseded by the more powerful
> and accurate ``query-qmp-schema'' command.
>
> +@subsection chardev client socket with 'wait' option (since 4.0)
> +
> +Character devices creating sockets in client mode should not specify
> +the 'wait' field, which is only applicable to sockets in server mode
> +
> @section Human Monitor Protocol (HMP) commands
>
> @subsection The hub_id parameter of 'hostfwd_add' / 'hostfwd_remove' (since 3.1)
> --
> 2.21.0.313.ge35b8cb8e2
>
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
next prev parent reply other threads:[~2019-04-15 16:27 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-15 16:21 [Qemu-devel] [PATCH v3] socket: allow wait=false for client socket Marc-André Lureau
2019-04-15 16:21 ` Marc-André Lureau
2019-04-15 16:27 ` Daniel P. Berrangé [this message]
2019-04-15 16:27 ` Daniel P. Berrangé
2019-04-15 16:32 ` Marc-André Lureau
2019-04-15 16:32 ` Marc-André Lureau
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190415162725.GR5718@redhat.com \
--to=berrange@redhat.com \
--cc=libvir-list@redhat.com \
--cc=marcandre.lureau@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.