summary refs log tree commit diff stats
path: root/include/hw/virtio/virtio-scsi.h
diff options
context:
space:
mode:
authorFam Zheng <famz@redhat.com>2014-09-23 15:49:28 +0800
committerPaolo Bonzini <pbonzini@redhat.com>2014-09-30 11:11:20 +0200
commit1880ad4f4e3b49f15c55e816d66b9690b3ede00c (patch)
treef02488a1e153e469f00ac5c4527c0f6ba005d3cb /include/hw/virtio/virtio-scsi.h
parent359eea71d98e7f2cf9efb5e65bb59a240bedb131 (diff)
downloadfocaccia-qemu-1880ad4f4e3b49f15c55e816d66b9690b3ede00c.tar.gz
focaccia-qemu-1880ad4f4e3b49f15c55e816d66b9690b3ede00c.zip
virtio-scsi: Batched prepare for cmd reqs
Queue the popped requests while calling
virtio_scsi_handle_cmd_req_prepare(), then submit them after all
prepared.

Signed-off-by: Fam Zheng <famz@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'include/hw/virtio/virtio-scsi.h')
-rw-r--r--include/hw/virtio/virtio-scsi.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/hw/virtio/virtio-scsi.h b/include/hw/virtio/virtio-scsi.h
index 1cc759a644..60dbfc99a8 100644
--- a/include/hw/virtio/virtio-scsi.h
+++ b/include/hw/virtio/virtio-scsi.h
@@ -213,6 +213,10 @@ typedef struct VirtIOSCSIReq {
     VirtQueueElement elem;
     /* Set by dataplane code. */
     VirtIOSCSIVring *vring;
+
+    /* Used for two-stage request submission */
+    QTAILQ_ENTRY(VirtIOSCSIReq) next;
+
     SCSIRequest *sreq;
     size_t resp_size;
     enum SCSIXferMode mode;