diff options
author | Vivek Goyal <vgoyal@redhat.com> | 2010-08-23 06:23:33 -0400 |
---|---|---|
committer | Jens Axboe <jaxboe@fusionio.com> | 2010-08-23 06:23:33 -0400 |
commit | b6508c1618e7aab085f191efb41b7b019a94ea38 (patch) | |
tree | 9568819705ebbdc3f4bca2d3d0290fe1a0773085 /block | |
parent | 75230ff2751e88d594a13a70eae2c146f45e323b (diff) |
cfq-iosched: Do not idle if slice_idle=0
Do not idle either on cfq queue or service tree if slice_idle=0. User does
not want any queue or service tree idling. Currently even if slice_idle=0,
we were waiting for request to finish before expiring the queue and that
can lead to lower queue depths.
Acked-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
Diffstat (limited to 'block')
-rw-r--r-- | block/cfq-iosched.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c index eb4086f7dfe..8830569542c 100644 --- a/block/cfq-iosched.c +++ b/block/cfq-iosched.c | |||
@@ -1839,6 +1839,9 @@ static bool cfq_should_idle(struct cfq_data *cfqd, struct cfq_queue *cfqq) | |||
1839 | BUG_ON(!service_tree); | 1839 | BUG_ON(!service_tree); |
1840 | BUG_ON(!service_tree->count); | 1840 | BUG_ON(!service_tree->count); |
1841 | 1841 | ||
1842 | if (!cfqd->cfq_slice_idle) | ||
1843 | return false; | ||
1844 | |||
1842 | /* We never do for idle class queues. */ | 1845 | /* We never do for idle class queues. */ |
1843 | if (prio == IDLE_WORKLOAD) | 1846 | if (prio == IDLE_WORKLOAD) |
1844 | return false; | 1847 | return false; |
@@ -1879,7 +1882,7 @@ static void cfq_arm_slice_timer(struct cfq_data *cfqd) | |||
1879 | /* | 1882 | /* |
1880 | * idle is disabled, either manually or by past process history | 1883 | * idle is disabled, either manually or by past process history |
1881 | */ | 1884 | */ |
1882 | if (!cfqd->cfq_slice_idle || !cfq_should_idle(cfqd, cfqq)) | 1885 | if (!cfq_should_idle(cfqd, cfqq)) |
1883 | return; | 1886 | return; |
1884 | 1887 | ||
1885 | /* | 1888 | /* |