diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2006-03-12 13:45:25 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2006-03-18 18:34:09 -0500 |
commit | 25975f863b0fd42c58109e253e7a4c65d9fdaf48 (patch) | |
tree | 98738124360c12c34b8820c3cc639dc275d1f4d0 /block | |
parent | d9ff41879364cfca7c15abc20ae398e35de3f883 (diff) |
[PATCH] stop cfq from pinning queue down
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'block')
-rw-r--r-- | block/cfq-iosched.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c index 3fc6e505e9c8..521c56d4fdbc 100644 --- a/block/cfq-iosched.c +++ b/block/cfq-iosched.c | |||
@@ -2121,13 +2121,10 @@ static void cfq_shutdown_timer_wq(struct cfq_data *cfqd) | |||
2121 | 2121 | ||
2122 | static void cfq_put_cfqd(struct cfq_data *cfqd) | 2122 | static void cfq_put_cfqd(struct cfq_data *cfqd) |
2123 | { | 2123 | { |
2124 | request_queue_t *q = cfqd->queue; | ||
2125 | |||
2126 | if (!atomic_dec_and_test(&cfqd->ref)) | 2124 | if (!atomic_dec_and_test(&cfqd->ref)) |
2127 | return; | 2125 | return; |
2128 | 2126 | ||
2129 | cfq_shutdown_timer_wq(cfqd); | 2127 | cfq_shutdown_timer_wq(cfqd); |
2130 | blk_put_queue(q); | ||
2131 | 2128 | ||
2132 | mempool_destroy(cfqd->crq_pool); | 2129 | mempool_destroy(cfqd->crq_pool); |
2133 | kfree(cfqd->crq_hash); | 2130 | kfree(cfqd->crq_hash); |
@@ -2205,7 +2202,6 @@ static int cfq_init_queue(request_queue_t *q, elevator_t *e) | |||
2205 | e->elevator_data = cfqd; | 2202 | e->elevator_data = cfqd; |
2206 | 2203 | ||
2207 | cfqd->queue = q; | 2204 | cfqd->queue = q; |
2208 | atomic_inc(&q->refcnt); | ||
2209 | 2205 | ||
2210 | cfqd->max_queued = q->nr_requests / 4; | 2206 | cfqd->max_queued = q->nr_requests / 4; |
2211 | q->nr_batching = cfq_queued; | 2207 | q->nr_batching = cfq_queued; |