[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 2/4] qga: drop unnecessary GA_CHANNEL_UNIX_LISTE
From: |
Michael Roth |
Subject: |
Re: [Qemu-devel] [PATCH 2/4] qga: drop unnecessary GA_CHANNEL_UNIX_LISTEN checks |
Date: |
Fri, 07 Oct 2016 11:04:09 -0500 |
User-agent: |
alot/0.3.6 |
Quoting Stefan Hajnoczi (2016-10-06 11:40:16)
> Throughout the code there are c->listen_channel checks which manage the
> listen socket file descriptor (waiting for accept(2), closing the file
> descriptor, etc). These checks are currently preceded by explicit
> c->method == GA_CHANNEL_UNIX_LISTEN checks.
>
> Explicit GA_CHANNEL_UNIX_LISTEN checks are not necessary since serial
> channel types do not create the listen channel (c->listen_channel).
>
> As more listen channel types are added, explicitly checking all of them
> becomes messy. Rely on c->listen_channel to determine whether or not a
> listen socket file descriptor is used.
>
> Signed-off-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Michael Roth <address@hidden>
> ---
> qga/channel-posix.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/qga/channel-posix.c b/qga/channel-posix.c
> index bf32158..579891d 100644
> --- a/qga/channel-posix.c
> +++ b/qga/channel-posix.c
> @@ -61,7 +61,6 @@ static void ga_channel_listen_add(GAChannel *c, int
> listen_fd, bool create)
>
> static void ga_channel_listen_close(GAChannel *c)
> {
> - g_assert(c->method == GA_CHANNEL_UNIX_LISTEN);
> g_assert(c->listen_channel);
> g_io_channel_shutdown(c->listen_channel, true, NULL);
> g_io_channel_unref(c->listen_channel);
> @@ -77,7 +76,7 @@ static void ga_channel_client_close(GAChannel *c)
> g_io_channel_shutdown(c->client_channel, true, NULL);
> g_io_channel_unref(c->client_channel);
> c->client_channel = NULL;
> - if (c->method == GA_CHANNEL_UNIX_LISTEN && c->listen_channel) {
> + if (c->listen_channel) {
> ga_channel_listen_add(c, 0, false);
> }
> }
> @@ -255,8 +254,7 @@ GAChannel *ga_channel_new(GAChannelMethod method, const
> gchar *path,
>
> void ga_channel_free(GAChannel *c)
> {
> - if (c->method == GA_CHANNEL_UNIX_LISTEN
> - && c->listen_channel) {
> + if (c->listen_channel) {
> ga_channel_listen_close(c);
> }
> if (c->client_channel) {
> --
> 2.7.4
>