qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Coiby Xu <coiby.xu@gmail.com>
To: Kevin Wolf <kwolf@redhat.com>
Cc: bharatlkmlkvm@gmail.com, qemu-devel@nongnu.org,
	stefanha@redhat.com,
	"Dr. David Alan Gilbert" <dgilbert@redhat.com>
Subject: Re: [PATCH v9 1/5] Allow vu_message_read to be replaced
Date: Wed, 24 Jun 2020 11:36:15 +0800	[thread overview]
Message-ID: <20200624033615.u7u7c4bjeugqa4l3@Rk> (raw)
In-Reply-To: <20200618104347.GB6012@linux.fritz.box>

On Thu, Jun 18, 2020 at 12:43:47PM +0200, Kevin Wolf wrote:
>Am 14.06.2020 um 20:39 hat Coiby Xu geschrieben:
>> Allow vu_message_read to be replaced by one which will make use of the
>> QIOChannel functions. Thus reading vhost-user message won't stall the
>> guest.
>>
>> Signed-off-by: Coiby Xu <coiby.xu@gmail.com>
>
>_vu_queue_notify() still has a direct call of vu_message_read() instead
>of using the pointer. Is this intentional?

This is a mistake. Thank you for reminding me!

>Renaming the function would make sure that such semantic merge conflicts
>don't stay unnoticed.

Thank you for this tip! Do you suggest renaming the function only for
the purpose of testing or should I adopt a name when submitting the
patch? For the latter case, I will change it to vu_message_read_default
then.

>> @@ -1704,6 +1702,7 @@ vu_deinit(VuDev *dev)
>>          }
>>
>>          if (vq->kick_fd != -1) {
>> +            dev->remove_watch(dev, vq->kick_fd);
>>              close(vq->kick_fd);
>>              vq->kick_fd = -1;
>>          }
>
>This hunk looks unrelated.

In v4, I made the comment to explain why it's needed. But libvhost-user
is supposed to be independent from QEMU, so Stefan suggested to remove it,

> > @@ -1627,6 +1647,12 @@ vu_deinit(VuDev *dev)
> >          }
> >
> >          if (vq->kick_fd != -1) {
> > +            /* remove watch for kick_fd
> > +             * When client process is running in gdb and
> > +             * quit command is run in gdb, QEMU will still dispatch the event
> > +             * which will cause segment fault in the callback function
> > +             */
>
> Code and comments in libvhost-user should not refer to QEMU specifics.
> Removing the watch is a good idea regardless of the application or event
> loop implementation.  No comment is needed here.
> +            /* remove watch for kick_fd
> +             * When client process is running in gdb and
> +             * quit command is run in gdb, QEMU will still dispatch the event
> +             * which will cause segment fault in the callback function
> +             */
> +            dev->remove_watch(dev, vq->kick_fd);

--
Best regards,
Coiby


  reply	other threads:[~2020-06-24  3:37 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-14 18:39 [PATCH v9 0/5] vhost-user block device backend implementation Coiby Xu
2020-06-14 18:39 ` [PATCH v9 1/5] Allow vu_message_read to be replaced Coiby Xu
2020-06-18 10:43   ` Kevin Wolf
2020-06-24  3:36     ` Coiby Xu [this message]
2020-06-24 12:24       ` Kevin Wolf
2020-06-14 18:39 ` [PATCH v9 2/5] generic vhost user server Coiby Xu
2020-06-18 13:29   ` Kevin Wolf
2020-08-17  8:59     ` Coiby Xu
2020-06-19 12:00   ` [PATCH 1/6] vhost-user-server: fix VHOST_MEMORY_MAX_REGIONS compiler error Stefan Hajnoczi
2020-06-19 12:00     ` [PATCH 2/6] vhost-user-server: drop unused #include <eventfd.h> Stefan Hajnoczi
2020-08-17 12:49       ` Coiby Xu
2020-08-18 15:11         ` Stefan Hajnoczi
2020-06-19 12:00     ` [PATCH 3/6] vhost-user-server: adjust vhost_user_server_set_aio_context() arguments Stefan Hajnoczi
2020-06-19 12:00     ` [PATCH 4/6] vhost-user-server: mark fd handlers "external" Stefan Hajnoczi
2020-06-19 12:00     ` [PATCH 5/6] vhost-user-server: fix s/initialized/initialize/ typo Stefan Hajnoczi
2020-06-19 12:00     ` [PATCH 6/6] vhost-user-server: use DevicePanicNotifierFn everywhere Stefan Hajnoczi
2020-06-19 12:13   ` [PATCH v9 2/5] generic vhost user server Stefan Hajnoczi
2020-08-17  8:24     ` Coiby Xu
2020-06-14 18:39 ` [PATCH v9 3/5] move logical block size check function to a common utility function Coiby Xu
2020-06-18 13:44   ` Kevin Wolf
2020-06-19 12:01   ` [PATCH 1/6] block-helpers: move MIN/MAX_BLOCK_SIZE constants into header file Stefan Hajnoczi
2020-06-19 12:01     ` [PATCH 2/6] block-helpers: switch to int64_t block size values Stefan Hajnoczi
2020-06-19 12:01     ` [PATCH 3/6] block-helpers: rename check_logical_block_size() to check_block_size() Stefan Hajnoczi
2020-06-19 12:01     ` [PATCH 4/6] block-helpers: use local_err in case errp is NULL Stefan Hajnoczi
2020-06-19 12:01     ` [PATCH 5/6] block-helpers: keep the copyright line from the original file Stefan Hajnoczi
2020-06-19 12:01     ` [PATCH 6/6] block-helpers: update doc comment in gtkdoc style Stefan Hajnoczi
2020-06-14 18:39 ` [PATCH v9 4/5] vhost-user block device backend server Coiby Xu
2020-06-18 15:57   ` Kevin Wolf
2020-08-17 12:30     ` Coiby Xu
2020-06-19 12:03   ` [PATCH 1/2] vhost-user-blk-server: adjust vhost_user_server_set_aio_context() arguments Stefan Hajnoczi
2020-06-19 12:03     ` [PATCH 2/2] vhost-user-blk-server: rename check_logical_block_size() to check_block_size() Stefan Hajnoczi
2020-06-14 18:39 ` [PATCH v9 5/5] new qTest case to test the vhost-user-blk-server Coiby Xu
2020-06-18 15:17   ` Stefan Hajnoczi
2020-06-24  4:35     ` Coiby Xu
2020-06-24 10:49       ` Stefan Hajnoczi
2020-06-24 15:14   ` Thomas Huth
2020-08-17  8:16     ` Coiby Xu
2020-06-14 19:12 ` [PATCH v9 0/5] vhost-user block device backend implementation no-reply
2020-06-14 19:16 ` no-reply
2020-06-16  6:52   ` Coiby Xu
2020-06-18  8:27     ` Stefan Hajnoczi
2020-06-24  4:00       ` Coiby Xu
2020-06-18  8:28     ` Stefan Hajnoczi
2020-08-17  8:23       ` Coiby Xu
2020-06-19 12:07 ` Stefan Hajnoczi
2020-06-24  4:48   ` Coiby Xu
2020-06-25 12:46   ` Coiby Xu
2020-06-26 15:46     ` Stefan Hajnoczi
2020-08-18 15:13 ` Stefan Hajnoczi
2020-09-15 15:35 ` Stefan Hajnoczi
2020-09-18  8:13   ` Coiby Xu

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=20200624033615.u7u7c4bjeugqa4l3@Rk \
    --to=coiby.xu@gmail.com \
    --cc=bharatlkmlkvm@gmail.com \
    --cc=dgilbert@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.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).