Commit 63de428b139d3d31d86ebe25ae97b33f6540fb7e
Committed by
Jens Axboe
1 parent
766ca4428d
Exists in
master
and in
4 other branches
deadline-iosched: allow non-sequential batching
Deadline currently only batches sector-contiguous requests, so except for a few circumstances (e.g. requests in a single direction), it is essentially first come first served. This is bad for throughput, so change it to CSCAN, which means requests in a batch do not need to be sequential and are issued in increasing sector order. Signed-off-by: Aaron Carroll <aaronc@gelato.unsw.edu.au> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Showing 1 changed file with 3 additions and 11 deletions Side-by-side Diff
block/deadline-iosched.c
... | ... | @@ -258,17 +258,9 @@ |
258 | 258 | else |
259 | 259 | rq = dd->next_rq[READ]; |
260 | 260 | |
261 | - if (rq) { | |
262 | - /* we have a "next request" */ | |
263 | - | |
264 | - if (dd->last_sector != rq->sector) | |
265 | - /* end the batch on a non sequential request */ | |
266 | - dd->batching += dd->fifo_batch; | |
267 | - | |
268 | - if (dd->batching < dd->fifo_batch) | |
269 | - /* we are still entitled to batch */ | |
270 | - goto dispatch_request; | |
271 | - } | |
261 | + if (rq && dd->batching < dd->fifo_batch) | |
262 | + /* we have a next request are still entitled to batch */ | |
263 | + goto dispatch_request; | |
272 | 264 | |
273 | 265 | /* |
274 | 266 | * at this point we are not running a batch. select the appropriate |