qemu/hw/block/dataplane
Tim Smith bfd0d63660 xen-block: improve response latency
If the I/O ring is full, the guest cannot send any more requests
until some responses are sent. Only sending all available responses
just before checking for new work does not leave much time for the
guest to supply new work, so this will cause stalls if the ring gets
full. Also, not completing reads as soon as possible adds latency
to the guest.

To alleviate that, complete IO requests as soon as they come back.
xen_block_send_response() already returns a value indicating whether
a notify should be sent, which is all the batching we need.

Signed-off-by: Tim Smith <tim.smith@citrix.com>

Re-based and commit comment adjusted.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Acked-by: Anthony PERARD <anthony.perard@citrix.com>
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
2019-01-14 13:45:40 +00:00
..
Makefile.objs xen: add header and build dataplane/xen-block.c 2019-01-14 13:45:40 +00:00
trace-events docs: fix broken paths to docs/devel/tracing.txt 2017-07-31 13:12:53 +03:00
virtio-blk.c Replace '-enable-kvm' with '-accel kvm' in docs and help texts 2018-06-28 19:05:32 +02:00
virtio-blk.h hw/block: Fix the return type 2017-12-19 09:25:28 +00:00
xen-block.c xen-block: improve response latency 2019-01-14 13:45:40 +00:00
xen-block.h xen: remove 'XenBlkDev' and 'blkdev' names from dataplane/xen-block 2019-01-14 13:45:40 +00:00