[dm-devel] Bisected: Massive memory leak in dm-snapshot in 3.1 development introduced

Alasdair G Kergon agk at redhat.com
Sun Oct 23 13:44:49 UTC 2011


On Sun, Oct 23, 2011 at 12:52:06PM +0300, Linus Torvalds wrote:
> Mikulas, Alasdair? I see the mempool_free() for the "master job", what
> about everything else? Does the dm_kcopyd_prepare_callback() perhaps
> need to do a
> 
>     job->master_job = job;
> 
> or similar?

If you look at the other place that performs that mempool_alloc, it's indeed
present there.

Michael - can you test if this solves the problem?

Alasdair

--- 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);
 




More information about the dm-devel mailing list