[PATCH] dm-kcopyd: Correctly free requests

From: Bastian Blank
Date: Fri Aug 26 2011 - 06:21:37 EST


kcopyd only frees the requests if the master job information is set up
correctly, but it was not in the recently added path. This leads to many
unfreed slabs during snapshot usage.

Signed-off-by: Bastian Blank <waldi@xxxxxxxxxx>
Tested-by: Andreas Barth <aba@xxxxxxxxxxxxxxx>

diff --git a/drivers/md/dm-kcopyd.c b/drivers/md/dm-kcopyd.c
index f821470..32ac708 100644
--- a/drivers/md/dm-kcopyd.c
+++ b/drivers/md/dm-kcopyd.c
@@ -628,6 +628,7 @@ void *dm_kcopyd_prepare_callback(struct dm_kcopyd_client *kc,
job->kc = kc;
job->fn = fn;
job->context = context;
+ job->master_job = job;

atomic_inc(&kc->nr_jobs);

--
Landru! Guide us!
-- A Beta 3-oid, "The Return of the Archons", stardate 3157.4
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/