|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] Pull requests from blkfront into blkback a bit more
# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 8c7de61d3913ed2b463c91624b0411041158a9c2
# Parent f94923f2dd14c862b070e133132b4f240f956525
Pull requests from blkfront into blkback a bit more
aggressively, to keep the scheduling pipeline filled.
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
diff -r f94923f2dd14 -r 8c7de61d3913
linux-2.6-xen-sparse/drivers/xen/blkback/blkback.c
--- a/linux-2.6-xen-sparse/drivers/xen/blkback/blkback.c Sun Dec 4
11:06:38 2005
+++ b/linux-2.6-xen-sparse/drivers/xen/blkback/blkback.c Sun Dec 4
17:20:41 2005
@@ -493,18 +493,24 @@
blk_ring->rsp_prod_pvt++;
RING_PUSH_RESPONSES_AND_CHECK_NOTIFY(blk_ring, notify);
- /*
- * Tail check for pending requests. Allows frontend to avoid
- * notifications if requests are already in flight (lower overheads
- * and promotes batching).
- */
if (blk_ring->rsp_prod_pvt == blk_ring->req_cons) {
+ /*
+ * Tail check for pending requests. Allows frontend to avoid
+ * notifications if requests are already in flight (lower
+ * overheads and promotes batching).
+ */
int more_to_do;
RING_FINAL_CHECK_FOR_REQUESTS(blk_ring, more_to_do);
if (more_to_do) {
add_to_blkdev_list_tail(blkif);
maybe_trigger_blkio_schedule();
}
+ }
+ else if (!__on_blkdev_list(blkif)
+ && RING_HAS_UNCONSUMED_REQUESTS(blk_ring)) {
+ /* Keep pulling requests as they become available... */
+ add_to_blkdev_list_tail(blkif);
+ maybe_trigger_blkio_schedule();
}
spin_unlock_irqrestore(&blkif->blk_ring_lock, flags);
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] Pull requests from blkfront into blkback a bit more,
Xen patchbot -unstable <=
|
|
|
|
|