[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 5/9] virtio-blk: tell dataplane which vq to notify
From: |
Stefan Hajnoczi |
Subject: |
[Qemu-devel] [PULL 5/9] virtio-blk: tell dataplane which vq to notify |
Date: |
Tue, 28 Jun 2016 14:23:27 +0100 |
Let the virtio_blk_data_plane_notify() caller decide which virtqueue to
notify. This will allow the function to be used with multiqueue.
Signed-off-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Message-id: address@hidden
Signed-off-by: Stefan Hajnoczi <address@hidden>
---
hw/block/dataplane/virtio-blk.c | 4 ++--
hw/block/dataplane/virtio-blk.h | 2 +-
hw/block/virtio-blk.c | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/hw/block/dataplane/virtio-blk.c b/hw/block/dataplane/virtio-blk.c
index c20a195..835021b 100644
--- a/hw/block/dataplane/virtio-blk.c
+++ b/hw/block/dataplane/virtio-blk.c
@@ -47,9 +47,9 @@ struct VirtIOBlockDataPlane {
};
/* Raise an interrupt to signal guest, if necessary */
-void virtio_blk_data_plane_notify(VirtIOBlockDataPlane *s)
+void virtio_blk_data_plane_notify(VirtIOBlockDataPlane *s, VirtQueue *vq)
{
- set_bit(0, s->batch_notify_vqs);
+ set_bit(virtio_get_queue_index(vq), s->batch_notify_vqs);
qemu_bh_schedule(s->bh);
}
diff --git a/hw/block/dataplane/virtio-blk.h b/hw/block/dataplane/virtio-blk.h
index 0714c11..b1f0b95 100644
--- a/hw/block/dataplane/virtio-blk.h
+++ b/hw/block/dataplane/virtio-blk.h
@@ -26,6 +26,6 @@ void virtio_blk_data_plane_destroy(VirtIOBlockDataPlane *s);
void virtio_blk_data_plane_start(VirtIOBlockDataPlane *s);
void virtio_blk_data_plane_stop(VirtIOBlockDataPlane *s);
void virtio_blk_data_plane_drain(VirtIOBlockDataPlane *s);
-void virtio_blk_data_plane_notify(VirtIOBlockDataPlane *s);
+void virtio_blk_data_plane_notify(VirtIOBlockDataPlane *s, VirtQueue *vq);
#endif /* HW_DATAPLANE_VIRTIO_BLK_H */
diff --git a/hw/block/virtio-blk.c b/hw/block/virtio-blk.c
index 4a3781a..bcce3df 100644
--- a/hw/block/virtio-blk.c
+++ b/hw/block/virtio-blk.c
@@ -55,7 +55,7 @@ static void virtio_blk_req_complete(VirtIOBlockReq *req,
unsigned char status)
stb_p(&req->in->status, status);
virtqueue_push(s->vq, &req->elem, req->in_len);
if (s->dataplane_started && !s->dataplane_disabled) {
- virtio_blk_data_plane_notify(s->dataplane);
+ virtio_blk_data_plane_notify(s->dataplane, s->vq);
} else {
virtio_notify(vdev, s->vq);
}
--
2.7.4
- [Qemu-devel] [PULL 0/9] Block patches, Stefan Hajnoczi, 2016/06/28
- [Qemu-devel] [PULL 1/9] Revert "virtio: sync the dataplane vring state to the virtqueue before virtio_save", Stefan Hajnoczi, 2016/06/28
- [Qemu-devel] [PULL 4/9] virtio-blk: multiqueue batch notify, Stefan Hajnoczi, 2016/06/28
- [Qemu-devel] [PULL 5/9] virtio-blk: tell dataplane which vq to notify,
Stefan Hajnoczi <=
- [Qemu-devel] [PULL 2/9] dma-helpers: dma_blk_io() cancel support, Stefan Hajnoczi, 2016/06/28
- [Qemu-devel] [PULL 6/9] virtio-blk: associate request with a virtqueue, Stefan Hajnoczi, 2016/06/28
- [Qemu-devel] [PULL 7/9] virtio-blk: live migrate s->rq with multiqueue, Stefan Hajnoczi, 2016/06/28
- [Qemu-devel] [PULL 3/9] virtio-blk: add VirtIOBlockConf->num_queues, Stefan Hajnoczi, 2016/06/28
- [Qemu-devel] [PULL 9/9] virtio-blk: add num-queues device property, Stefan Hajnoczi, 2016/06/28
- [Qemu-devel] [PULL 8/9] virtio-blk: dataplane multiqueue support, Stefan Hajnoczi, 2016/06/28
- Re: [Qemu-devel] [PULL 0/9] Block patches, Peter Maydell, 2016/06/28