qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 0/8] virtio-blk: multiqueue support
@ 2016-05-31  1:25 Stefan Hajnoczi
  2016-05-31  1:25 ` [Qemu-devel] [PATCH v2 1/8] virtio-blk: use batch notify in non-dataplane case Stefan Hajnoczi
                   ` (8 more replies)
  0 siblings, 9 replies; 13+ messages in thread
From: Stefan Hajnoczi @ 2016-05-31  1:25 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Roman Pen, Fam Zheng, Christian Borntraeger,
	Paolo Bonzini, Ming Lei, Stefan Hajnoczi

v2:
 * Simplify s->rq live migration [Paolo]
 * Use more efficient bitmap ops for batch notification [Paolo]
 * Fix perf regression due to batch notify BH in wrong AioContext [Christian]

The virtio_blk guest driver has supported multiple virtqueues since Linux 3.17.
This patch series adds multiple virtqueues to QEMU's virtio-blk emulated
device.

Ming Lei sent patches previously but these were not merged.  This series
implements virtio-blk multiqueue for QEMU from scratch since the codebase has
changed.  Live migration support for s->rq was also missing from the previous
series and has been added.

It's important to note that QEMU's block layer does not support multiqueue yet.
Therefore virtio-blk device processes all virtqueues in the same AioContext
(IOThread).  Further work is necessary to take advantage of multiqueue support
in QEMU's block layer once it becomes available.

I will post performance results once they are ready.

Stefan Hajnoczi (8):
  virtio-blk: use batch notify in non-dataplane case
  virtio-blk: tell dataplane which vq to notify
  virtio-blk: associate request with a virtqueue
  virtio-blk: add VirtIOBlockConf->num_queues
  virtio-blk: multiqueue batch notify
  virtio-blk: live migrateion s->rq with multiqueue
  virtio-blk: dataplane multiqueue support
  virtio-blk: add num-queues device property

 hw/block/dataplane/virtio-blk.c |  68 +++++++++++----------
 hw/block/dataplane/virtio-blk.h |   2 +-
 hw/block/virtio-blk.c           | 129 +++++++++++++++++++++++++++++++++++-----
 include/hw/virtio/virtio-blk.h  |   8 ++-
 4 files changed, 159 insertions(+), 48 deletions(-)

-- 
2.5.5

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2016-06-06 15:16 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-05-31  1:25 [Qemu-devel] [PATCH v2 0/8] virtio-blk: multiqueue support Stefan Hajnoczi
2016-05-31  1:25 ` [Qemu-devel] [PATCH v2 1/8] virtio-blk: use batch notify in non-dataplane case Stefan Hajnoczi
2016-05-31  1:26 ` [Qemu-devel] [PATCH v2 2/8] virtio-blk: tell dataplane which vq to notify Stefan Hajnoczi
2016-05-31  1:26 ` [Qemu-devel] [PATCH v2 3/8] virtio-blk: associate request with a virtqueue Stefan Hajnoczi
2016-05-31  1:26 ` [Qemu-devel] [PATCH v2 4/8] virtio-blk: add VirtIOBlockConf->num_queues Stefan Hajnoczi
2016-05-31  1:26 ` [Qemu-devel] [PATCH v2 5/8] virtio-blk: multiqueue batch notify Stefan Hajnoczi
2016-05-31  1:26 ` [Qemu-devel] [PATCH v2 6/8] virtio-blk: live migrateion s->rq with multiqueue Stefan Hajnoczi
2016-05-31  1:26 ` [Qemu-devel] [PATCH v2 7/8] virtio-blk: dataplane multiqueue support Stefan Hajnoczi
2016-05-31  1:26 ` [Qemu-devel] [PATCH v2 8/8] virtio-blk: add num-queues device property Stefan Hajnoczi
2016-06-03  0:19 ` [Qemu-devel] [PATCH v2 0/8] virtio-blk: multiqueue support Stefan Hajnoczi
2016-06-03 22:26   ` Stefan Hajnoczi
2016-06-04 15:49     ` Roman Penyaev
2016-06-06 15:16     ` Paolo Bonzini

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).