diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2006-03-18 13:22:53 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2006-03-18 18:33:56 -0500 |
commit | 7670876d2d194b2aecb54f397704838eee7d72ee (patch) | |
tree | 4c1b29bba1b038a407870ab62b3dd70057c949e0 | |
parent | b0a6916bcc48f46996d54b8451591a2f2b7b2f64 (diff) |
[PATCH] stop leaking cfq_data in cfq_set_request()
We don't need to pin ->key down; ->cfqq->cfqd will do that for us.
Incidentally, that stops the leak we had - that reference was never
dropped.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r-- | block/cfq-iosched.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c index 37a2a772498c..63ed11f8795d 100644 --- a/block/cfq-iosched.c +++ b/block/cfq-iosched.c | |||
@@ -1433,7 +1433,6 @@ cfq_get_io_context(struct cfq_data *cfqd, pid_t pid, gfp_t gfp_mask) | |||
1433 | ioc->set_ioprio = cfq_ioc_set_ioprio; | 1433 | ioc->set_ioprio = cfq_ioc_set_ioprio; |
1434 | cic->ioc = ioc; | 1434 | cic->ioc = ioc; |
1435 | cic->key = cfqd; | 1435 | cic->key = cfqd; |
1436 | atomic_inc(&cfqd->ref); | ||
1437 | } else { | 1436 | } else { |
1438 | struct cfq_io_context *__cic; | 1437 | struct cfq_io_context *__cic; |
1439 | 1438 | ||
@@ -1469,7 +1468,6 @@ cfq_get_io_context(struct cfq_data *cfqd, pid_t pid, gfp_t gfp_mask) | |||
1469 | 1468 | ||
1470 | __cic->ioc = ioc; | 1469 | __cic->ioc = ioc; |
1471 | __cic->key = cfqd; | 1470 | __cic->key = cfqd; |
1472 | atomic_inc(&cfqd->ref); | ||
1473 | list_add(&__cic->list, &cic->list); | 1471 | list_add(&__cic->list, &cic->list); |
1474 | cic = __cic; | 1472 | cic = __cic; |
1475 | } | 1473 | } |