Skip to content

Commit

Permalink
cfq-iosched: remove limit of dispatch depth of max 4 times quantum
Browse files Browse the repository at this point in the history
This basically limits the hardware queue depth to 4*quantum at any
point in time, which is 16 with the default settings. As CFQ uses
other means to shrink the hardware queue when necessary in the first
place, there's really no need for this extra heuristic. Additionally,
it ends up hurting performance in some cases.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
  • Loading branch information
Jens Axboe committed Dec 29, 2008
1 parent 31dcfab commit 30e0dc2
Showing 1 changed file with 2 additions and 6 deletions.
8 changes: 2 additions & 6 deletions block/cfq-iosched.c
Original file line number Diff line number Diff line change
Expand Up @@ -1136,12 +1136,8 @@ static int cfq_dispatch_requests(struct request_queue *q, int force)
if (cfq_class_idle(cfqq))
max_dispatch = 1;

if (cfqq->dispatched >= max_dispatch) {
if (cfqd->busy_queues > 1)
break;
if (cfqq->dispatched >= 4 * max_dispatch)
break;
}
if (cfqq->dispatched >= max_dispatch && cfqd->busy_queues > 1)
break;

if (cfqd->sync_flight && !cfq_cfqq_sync(cfqq))
break;
Expand Down

0 comments on commit 30e0dc2

Please sign in to comment.