Re: [PATCH v2 1/4] mm/zswap: bugfix: memory leak when re-swapon

From: Bob Liu
Date: Fri Sep 06 2013 - 02:31:43 EST




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 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/