cfq-iosched: give busy sync queue no dispatch limit
authorShaohua Li <shaohua.li@intel.com>
Mon, 7 Mar 2011 08:26:29 +0000 (09:26 +0100)
committerJens Axboe <jaxboe@fusionio.com>
Mon, 7 Mar 2011 08:26:29 +0000 (09:26 +0100)
commitef8a41df8c140f10108de75b01b6369d6e49113c
tree2407ce27d3b51205a56193f26db1c1b40a5c556f
parent93803e0140c6216b68fe926ccc611297120da273
cfq-iosched: give busy sync queue no dispatch limit

If there are a sync and an async queue and the sync queue's think time
is small, we can ignore the sync queue's dispatch quantum. Because the
sync queue will always preempt the async queue, we don't need to care
about async's latency.  This can fix a performance regression of
aiostress test, which is introduced by commit f8ae6e3eb825. The issue
should exist even without the commit, but the commit amplifies the
impact.

The initial post does the same optimization for RT queue too, but since
I have no real workload for it, Vivek suggests to drop it.

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