On 09/06/2013 01:16 PM, Weijie Yang wrote: > zswap_tree is not freed when swapoff, and it got re-kmalloc in swapon, > so memory-leak occurs. > > Modify: free memory of zswap_tree in zswap_frontswap_invalidate_area(). > > Signed-off-by: Weijie Yang <weijie.yang@xxxxxxxxxxx> Reviewed-by: Bob Liu <bob.liu@xxxxxxxxxx> > --- > mm/zswap.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/mm/zswap.c b/mm/zswap.c > index deda2b6..cbd9578 100644 > --- a/mm/zswap.c > +++ b/mm/zswap.c > @@ -816,6 +816,10 @@ static void zswap_frontswap_invalidate_area(unsigned type) > } > tree->rbroot = RB_ROOT; > spin_unlock(&tree->lock); > + > + zbud_destroy_pool(tree->pool); > + kfree(tree); > + zswap_trees[type] = NULL; > } > > static struct zbud_ops zswap_zbud_ops = { > -- Regards, -Bob -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>