[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 33/47] virtio-blk: Export request handling functions
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [PULL 33/47] virtio-blk: Export request handling functions to dataplane |
Date: |
Fri, 27 Jun 2014 21:08:52 +0200 |
From: Fam Zheng <address@hidden>
So that dataplane can use virtio_blk_handle_request and
virtio_submit_multiwrite.
Signed-off-by: Fam Zheng <address@hidden>
Tested-by: Paolo Bonzini <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
---
hw/block/virtio-blk.c | 10 ++--------
include/hw/virtio/virtio-blk.h | 9 +++++++++
2 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/hw/block/virtio-blk.c b/hw/block/virtio-blk.c
index 9975ad0..77fb447 100644
--- a/hw/block/virtio-blk.c
+++ b/hw/block/virtio-blk.c
@@ -253,12 +253,7 @@ static void virtio_blk_handle_scsi(VirtIOBlockReq *req)
virtio_blk_free_request(req);
}
-typedef struct MultiReqBuffer {
- BlockRequest blkreq[32];
- unsigned int num_writes;
-} MultiReqBuffer;
-
-static void virtio_submit_multiwrite(BlockDriverState *bs, MultiReqBuffer *mrb)
+void virtio_submit_multiwrite(BlockDriverState *bs, MultiReqBuffer *mrb)
{
int i, ret;
@@ -347,8 +342,7 @@ static void virtio_blk_handle_read(VirtIOBlockReq *req)
virtio_blk_rw_complete, req);
}
-static void virtio_blk_handle_request(VirtIOBlockReq *req,
- MultiReqBuffer *mrb)
+void virtio_blk_handle_request(VirtIOBlockReq *req, MultiReqBuffer *mrb)
{
uint32_t type;
struct iovec *in_iov = req->elem->in_sg;
diff --git a/include/hw/virtio/virtio-blk.h b/include/hw/virtio/virtio-blk.h
index 0398f4c..d0fb26f 100644
--- a/include/hw/virtio/virtio-blk.h
+++ b/include/hw/virtio/virtio-blk.h
@@ -137,6 +137,11 @@ typedef struct VirtIOBlock {
#endif
} VirtIOBlock;
+typedef struct MultiReqBuffer {
+ BlockRequest blkreq[32];
+ unsigned int num_writes;
+} MultiReqBuffer;
+
typedef struct VirtIOBlockReq {
VirtIOBlock *dev;
VirtQueueElement *elem;
@@ -172,4 +177,8 @@ void virtio_blk_set_conf(DeviceState *dev, VirtIOBlkConf
*blk);
int virtio_blk_handle_scsi_req(VirtIOBlock *blk,
VirtQueueElement *elem);
+void virtio_blk_handle_request(VirtIOBlockReq *req, MultiReqBuffer *mrb);
+
+void virtio_submit_multiwrite(BlockDriverState *bs, MultiReqBuffer *mrb);
+
#endif
--
1.8.3.1
- [Qemu-devel] [PULL 20/47] block: Add node-name argument to drive-mirror, (continued)
- [Qemu-devel] [PULL 20/47] block: Add node-name argument to drive-mirror, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 22/47] virtio-blk: Convert VirtIOBlockReq.elem to pointer, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 23/47] virtio-blk: Drop bounce buffer from dataplane code, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 24/47] virtio-blk: Drop VirtIOBlockRequest.read, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 25/47] virtio-blk: Replace VirtIOBlockRequest with VirtIOBlockReq, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 26/47] virtio-blk: Use VirtIOBlockReq.in to drop VirtIOBlockReq.inhdr, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 30/47] block: make bdrv_query_stats() static, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 31/47] block: acquire AioContext in qmp_query_blockstats(), Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 32/47] virtio-blk: Make request completion function virtual, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 34/47] virtio-blk: Schedule BH in the right context, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 33/47] virtio-blk: Export request handling functions to dataplane,
Kevin Wolf <=
- [Qemu-devel] [PULL 40/47] qemu-iotests: Add TestRepairQuorum to 041 to test drive-mirror node-name mode., Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 41/47] block.c: Don't return success for bdrv_append_temp_snapshot() failure, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 42/47] iotests: Allow out-of-tree run, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 43/47] configure: Enable out-of-tree iotests, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 45/47] iotests: Use $PYTHON for Python scripts, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 44/47] iotests: Source common.env, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 47/47] iotests: Fix 083 for out-of-tree builds, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 46/47] iotests: Drop Python version from 065's Shebang, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 21/47] virtio-blk: Move VirtIOBlockReq to header, Kevin Wolf, 2014/06/27
- [Qemu-devel] [PULL 37/47] blockjob: Fix recent BLOCK_JOB_READY regression, Kevin Wolf, 2014/06/27