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)
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

Simple merge