From: "Michael S. Tsirkin" <mst@redhat.com>
To: Li Feng <fengli@smartx.com>
Cc: Kevin Wolf <kwolf@redhat.com>,
raphael.norwitz@nutanix.com,
"open list:All patches CC here" <qemu-devel@nongnu.org>,
"open list:Block layer core" <qemu-block@nongnu.org>,
Max Reitz <mreitz@redhat.com>
Subject: Re: [PATCH] fix vhost_user_blk_watch crash
Date: Sun, 29 Mar 2020 09:30:24 -0400 [thread overview]
Message-ID: <20200329084911-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20200323052924.29286-1-fengli@smartx.com>
On Mon, Mar 23, 2020 at 01:29:24PM +0800, Li Feng wrote:
> the G_IO_HUP is watched in tcp_chr_connect, and the callback
> vhost_user_blk_watch is not needed, because tcp_chr_hup is registered as
> callback. And it will close the tcp link.
>
> Signed-off-by: Li Feng <fengli@smartx.com>
Raphael would you like to review this?
Also, I think at this point
nutanix is the biggest contributor to vhost user blk.
So if you want to be added to MAINTAINERS on this
one so people Cc you on patcches, that'd be great.
> ---
> hw/block/vhost-user-blk.c | 19 -------------------
> include/hw/virtio/vhost-user-blk.h | 1 -
> 2 files changed, 20 deletions(-)
>
> diff --git a/hw/block/vhost-user-blk.c b/hw/block/vhost-user-blk.c
> index 12925a47ec..17df5338e7 100644
> --- a/hw/block/vhost-user-blk.c
> +++ b/hw/block/vhost-user-blk.c
> @@ -349,18 +349,6 @@ static void vhost_user_blk_disconnect(DeviceState *dev)
> vhost_dev_cleanup(&s->dev);
> }
>
> -static gboolean vhost_user_blk_watch(GIOChannel *chan, GIOCondition cond,
> - void *opaque)
> -{
> - DeviceState *dev = opaque;
> - VirtIODevice *vdev = VIRTIO_DEVICE(dev);
> - VHostUserBlk *s = VHOST_USER_BLK(vdev);
> -
> - qemu_chr_fe_disconnect(&s->chardev);
> -
> - return true;
> -}
> -
> static void vhost_user_blk_event(void *opaque, QEMUChrEvent event)
> {
> DeviceState *dev = opaque;
> @@ -373,15 +361,9 @@ static void vhost_user_blk_event(void *opaque, QEMUChrEvent event)
> qemu_chr_fe_disconnect(&s->chardev);
> return;
> }
> - s->watch = qemu_chr_fe_add_watch(&s->chardev, G_IO_HUP,
> - vhost_user_blk_watch, dev);
> break;
> case CHR_EVENT_CLOSED:
> vhost_user_blk_disconnect(dev);
> - if (s->watch) {
> - g_source_remove(s->watch);
> - s->watch = 0;
> - }
> break;
> case CHR_EVENT_BREAK:
> case CHR_EVENT_MUX_IN:
> @@ -428,7 +410,6 @@ static void vhost_user_blk_device_realize(DeviceState *dev, Error **errp)
>
> s->inflight = g_new0(struct vhost_inflight, 1);
> s->vhost_vqs = g_new0(struct vhost_virtqueue, s->num_queues);
> - s->watch = 0;
> s->connected = false;
>
> qemu_chr_fe_set_handlers(&s->chardev, NULL, NULL, vhost_user_blk_event,
> diff --git a/include/hw/virtio/vhost-user-blk.h b/include/hw/virtio/vhost-user-blk.h
> index 05ea0ad183..34ad6f0c0e 100644
> --- a/include/hw/virtio/vhost-user-blk.h
> +++ b/include/hw/virtio/vhost-user-blk.h
> @@ -38,7 +38,6 @@ typedef struct VHostUserBlk {
> VhostUserState vhost_user;
> struct vhost_virtqueue *vhost_vqs;
> VirtQueue **virtqs;
> - guint watch;
> bool connected;
> } VHostUserBlk;
>
> --
> 2.11.0
>
>
> --
> The SmartX email address is only for business purpose. Any sent message
> that is not related to the business is not authorized or permitted by
> SmartX.
> 本邮箱为北京志凌海纳科技有限公司(SmartX)工作邮箱. 如本邮箱发出的邮件与工作无关,该邮件未得到本公司任何的明示或默示的授权.
>
next prev parent reply other threads:[~2020-03-29 13:31 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-23 5:29 [PATCH] fix vhost_user_blk_watch crash Li Feng
2020-03-25 23:03 ` Raphael Norwitz
2020-03-29 13:30 ` Michael S. Tsirkin [this message]
2020-03-25 22:30 ` Raphael Norwitz
2020-03-31 11:41 ` Michael S. Tsirkin
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=20200329084911-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=fengli@smartx.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=raphael.norwitz@nutanix.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).