summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2006-03-12 19:45:25 +0100
committerAl Viro <viro@zeniv.linux.org.uk>2006-03-19 00:34:09 +0100
commit25975f863b0fd42c58109e253e7a4c65d9fdaf48 (patch)
tree98738124360c12c34b8820c3cc639dc275d1f4d0
parent[PATCH] make cfq_exit_queue() prune the cfq_io_context for that queue (diff)
downloadlinux-25975f863b0fd42c58109e253e7a4c65d9fdaf48.tar.xz
linux-25975f863b0fd42c58109e253e7a4c65d9fdaf48.zip
[PATCH] stop cfq from pinning queue down
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r--block/cfq-iosched.c4
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)
static void cfq_put_cfqd(struct cfq_data *cfqd)
{
- request_queue_t *q = cfqd->queue;
-
if (!atomic_dec_and_test(&cfqd->ref))
return;
cfq_shutdown_timer_wq(cfqd);
- blk_put_queue(q);
mempool_destroy(cfqd->crq_pool);
kfree(cfqd->crq_hash);
@@ -2205,7 +2202,6 @@ static int cfq_init_queue(request_queue_t *q, elevator_t *e)
e->elevator_data = cfqd;
cfqd->queue = q;
- atomic_inc(&q->refcnt);
cfqd->max_queued = q->nr_requests / 4;
q->nr_batching = cfq_queued;