cfq-iosched: schedule dispatch for noidle queue
authorShaohua Li <shaohua.li@intel.com>
Mon, 8 Nov 2010 14:01:03 +0000 (15:01 +0100)
committerJens Axboe <jaxboe@fusionio.com>
Mon, 8 Nov 2010 14:01:03 +0000 (15:01 +0100)
commitd2d59e18a1ea8ecdd1c0a52af320e9a7f5391cc4
treeb39812dc8fd9ae552c361a84a10dcd61d2caaab5
parentc1e44756fdb7b363fd22cb5514dced40752e36c5
cfq-iosched: schedule dispatch for noidle queue

A queue is idle at cfq_dispatch_requests(), but it gets noidle later. Unless
other task explictly does unplug or all requests are drained, we will not
deliever requests to the disk even cfq_arm_slice_timer doesn't make the
queue idle. For example, cfq_should_idle() returns true because of
service_tree->count == 1, and then other queues are added. Note, I didn't
see obvious performance impacts so far with the patch, but just thought
this could be a problem.

Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
block/cfq-iosched.c