[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 0/8] virtio-blk: multiqueue support
From: |
Stefan Hajnoczi |
Subject: |
[Qemu-devel] [PATCH v2 0/8] virtio-blk: multiqueue support |
Date: |
Mon, 30 May 2016 18:25:58 -0700 |
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
- [Qemu-devel] [PATCH v2 0/8] virtio-blk: multiqueue support,
Stefan Hajnoczi <=
- [Qemu-devel] [PATCH v2 1/8] virtio-blk: use batch notify in non-dataplane case, Stefan Hajnoczi, 2016/05/30
- [Qemu-devel] [PATCH v2 2/8] virtio-blk: tell dataplane which vq to notify, Stefan Hajnoczi, 2016/05/30
- [Qemu-devel] [PATCH v2 3/8] virtio-blk: associate request with a virtqueue, Stefan Hajnoczi, 2016/05/30
- [Qemu-devel] [PATCH v2 4/8] virtio-blk: add VirtIOBlockConf->num_queues, Stefan Hajnoczi, 2016/05/30
- [Qemu-devel] [PATCH v2 5/8] virtio-blk: multiqueue batch notify, Stefan Hajnoczi, 2016/05/30
- [Qemu-devel] [PATCH v2 6/8] virtio-blk: live migrateion s->rq with multiqueue, Stefan Hajnoczi, 2016/05/30
- [Qemu-devel] [PATCH v2 7/8] virtio-blk: dataplane multiqueue support, Stefan Hajnoczi, 2016/05/30
- [Qemu-devel] [PATCH v2 8/8] virtio-blk: add num-queues device property, Stefan Hajnoczi, 2016/05/30