From: "Michael S. Tsirkin" <mst@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: qemu-devel@nongnu.org, borntraeger@de.ibm.com,
cornelia.huck@de.ibm.com, famz@redhat.com
Subject: Re: [Qemu-devel] [PATCH 00/12] virtio: cleanup ioeventfd start/stop
Date: Mon, 10 Oct 2016 01:01:17 +0300 [thread overview]
Message-ID: <20161010010024-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <1474463939-12223-1-git-send-email-pbonzini@redhat.com>
On Wed, Sep 21, 2016 at 03:18:47PM +0200, Paolo Bonzini wrote:
> This series started as an attempt to always use the dataplane path
> for virtio-blk and virtio-scsi when ioeventfd is active. The aim
> was three-fold:
>
> 1) to add more coverage for dataplane
>
> 2) to remove virtio_add_queue_aio
>
> 3) to simplify the dataplane start/stop code
>
> It achieves the first two objectives, and while it doesn't quite
> achieve the third it does cleanup the generic ioeventfd code in
> virtio-bus more than I expected. In particular, it reduces the set
> of callbacks that transports must implement, and it removes the ugly
> case where ioeventfd is started with generic callbacks and then moved
> to the dataplane callbacks. It also enables some simplification of the
> functions that deal with host notifiers.
>
> I've tested it with virtio-blk, virtio-scsi and vhost-net.
>
> Patches 1 and 2 are simplifications that are too nice to leave
> them for later in the series.
>
> Patch 3 moves some of the ioeventfd code from virtio-bus.c to
> virtio.c. At this point the transition is a bit half-assed, but
> this changes as soon as we remove the generic->dataplane
> handler transition.
>
> Patches 4 to 6 do exactly that, and then the spring cleaning
> begins, lasting for the whole second half of the series.
>
> Opinions, reviews and bug reports?
>
> Thanks,
>
> Paolo
OK, this looks good to me. Can you pls rebase and repost
so I can merge (there was also a bug report I think)?
> Paolo Bonzini (12):
> virtio: move ioeventfd_disabled flag to VirtioBusState
> virtio: move ioeventfd_started flag to VirtioBusState
> virtio: add start_ioeventfd and stop_ioeventfd to VirtioDeviceClass
> virtio: introduce virtio_device_ioeventfd_enabled
> virtio-blk: always use dataplane path if ioeventfd is active
> virtio-scsi: always use dataplane path if ioeventfd is active
> Revert "virtio: Introduce virtio_add_queue_aio"
> virtio: remove set_handler argument from set_host_notifier_internal
> virtio: remove ioeventfd_disabled altogether
> virtio: do not export set_host_notifier_internal
> virtio: inline virtio_queue_set_host_notifier_fd_handler
> virtio: inline set_host_notifier_internal
>
> hw/block/dataplane/virtio-blk.c | 67 +++++++++++-------
> hw/block/dataplane/virtio-blk.h | 6 +-
> hw/block/virtio-blk.c | 16 ++---
> hw/s390x/virtio-ccw.c | 36 +---------
> hw/s390x/virtio-ccw.h | 2 -
> hw/scsi/virtio-scsi-dataplane.c | 51 ++++++++------
> hw/scsi/virtio-scsi.c | 24 +++----
> hw/virtio/vhost.c | 5 +-
> hw/virtio/virtio-bus.c | 153 +++++++++++++++-------------------------
> hw/virtio/virtio-mmio.c | 35 +--------
> hw/virtio/virtio-pci.c | 32 +--------
> hw/virtio/virtio-pci.h | 2 -
> hw/virtio/virtio.c | 139 +++++++++++++++++++++++-------------
> include/hw/virtio/virtio-bus.h | 27 ++++---
> include/hw/virtio/virtio-scsi.h | 6 +-
> include/hw/virtio/virtio.h | 11 +--
> 16 files changed, 272 insertions(+), 340 deletions(-)
>
> --
> 2.7.4
next prev parent reply other threads:[~2016-10-09 22:01 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-21 13:18 [Qemu-devel] [PATCH 00/12] virtio: cleanup ioeventfd start/stop Paolo Bonzini
2016-09-21 13:18 ` [Qemu-devel] [PATCH 01/12] virtio: move ioeventfd_disabled flag to VirtioBusState Paolo Bonzini
2016-09-29 14:32 ` Stefan Hajnoczi
2016-09-21 13:18 ` [Qemu-devel] [PATCH 02/12] virtio: move ioeventfd_started " Paolo Bonzini
2016-09-29 14:36 ` Stefan Hajnoczi
2016-09-21 13:18 ` [Qemu-devel] [PATCH 03/12] virtio: add start_ioeventfd and stop_ioeventfd to VirtioDeviceClass Paolo Bonzini
2016-09-30 13:12 ` Stefan Hajnoczi
2016-09-21 13:18 ` [Qemu-devel] [PATCH 04/12] virtio: introduce virtio_device_ioeventfd_enabled Paolo Bonzini
2016-09-30 13:19 ` Stefan Hajnoczi
2016-09-21 13:18 ` [Qemu-devel] [PATCH 05/12] virtio-blk: always use dataplane path if ioeventfd is active Paolo Bonzini
2016-09-21 13:18 ` [Qemu-devel] [PATCH 06/12] virtio-scsi: " Paolo Bonzini
2016-09-21 13:18 ` [Qemu-devel] [PATCH 07/12] Revert "virtio: Introduce virtio_add_queue_aio" Paolo Bonzini
2016-09-30 13:28 ` Stefan Hajnoczi
2016-09-21 13:18 ` [Qemu-devel] [PATCH 08/12] virtio: remove set_handler argument from set_host_notifier_internal Paolo Bonzini
2016-09-30 13:31 ` Stefan Hajnoczi
2016-09-21 13:18 ` [Qemu-devel] [PATCH 09/12] virtio: remove ioeventfd_disabled altogether Paolo Bonzini
2016-09-21 13:18 ` [Qemu-devel] [PATCH 10/12] virtio: do not export set_host_notifier_internal Paolo Bonzini
2016-09-30 13:34 ` Stefan Hajnoczi
2016-09-21 13:18 ` [Qemu-devel] [PATCH 11/12] virtio: inline virtio_queue_set_host_notifier_fd_handler Paolo Bonzini
2016-09-21 13:18 ` [Qemu-devel] [PATCH 12/12] virtio: inline set_host_notifier_internal Paolo Bonzini
2016-09-30 13:37 ` Stefan Hajnoczi
2016-09-21 14:01 ` [Qemu-devel] [PATCH 00/12] virtio: cleanup ioeventfd start/stop Christian Borntraeger
2016-09-21 16:43 ` Paolo Bonzini
2016-09-27 14:45 ` Christian Borntraeger
2016-09-27 16:44 ` Paolo Bonzini
2016-09-28 6:58 ` Christian Borntraeger
2016-09-21 17:31 ` Michael S. Tsirkin
2016-09-30 13:38 ` Stefan Hajnoczi
2016-10-09 22:01 ` Michael S. Tsirkin [this message]
2016-10-10 8:31 ` Paolo Bonzini
-- strict thread matches above, loose matches on Subject: below --
2016-10-10 11:53 Paolo Bonzini
2016-10-18 17:24 ` Cornelia Huck
2016-10-18 21:47 ` Paolo Bonzini
2016-10-19 12:17 ` Cornelia Huck
2016-10-19 15:38 ` Cornelia Huck
2016-10-19 20:44 ` Paolo Bonzini
2016-10-20 9:03 ` Cornelia Huck
2016-10-20 16:53 ` Paolo Bonzini
2016-10-21 8:45 ` Cornelia Huck
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=20161010010024-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=borntraeger@de.ibm.com \
--cc=cornelia.huck@de.ibm.com \
--cc=famz@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.