[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <000301d097a6$6f3f9e70$4dbedb50$@samsung.com>
Date: Tue, 26 May 2015 19:23:02 +0800
From: Chao Yu <chao2.yu@...sung.com>
To: dedekind1@...il.com, adrian.hunter@...el.com, richard@....at
Cc: linux-mtd@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: RE: [PATCH] ubifs: fix to check error code of register_shrinker
Ping.
Add Cc Richard Weinberger.
> -----Original Message-----
> From: linux-mtd [mailto:linux-mtd-bounces@...ts.infradead.org] On Behalf Of Chao Yu
> Sent: Monday, May 18, 2015 4:43 PM
> To: dedekind1@...il.com; adrian.hunter@...el.com
> Cc: linux-mtd@...ts.infradead.org; linux-kernel@...r.kernel.org
> Subject: [PATCH] ubifs: fix to check error code of register_shrinker
>
> register_shrinker() in ubifs_init() can fail due to fail to call kzalloc.
> This patch fixes to check the return value of register_shrinker, otherwise
> our shrinker may be unregistered after ubifs initialized successfully.
>
> Signed-off-by: Chao Yu <chao2.yu@...sung.com>
> ---
> fs/ubifs/super.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/fs/ubifs/super.c b/fs/ubifs/super.c
> index 75e6f04..fa83d1b 100644
> --- a/fs/ubifs/super.c
> +++ b/fs/ubifs/super.c
> @@ -2245,7 +2245,9 @@ static int __init ubifs_init(void)
> if (!ubifs_inode_slab)
> return -ENOMEM;
>
> - register_shrinker(&ubifs_shrinker_info);
> + err = register_shrinker(&ubifs_shrinker_info);
> + if (err)
> + goto out_slab;
>
> err = ubifs_compressors_init();
> if (err)
> @@ -2269,6 +2271,7 @@ out_compr:
> ubifs_compressors_exit();
> out_shrinker:
> unregister_shrinker(&ubifs_shrinker_info);
> +out_slab:
> kmem_cache_destroy(ubifs_inode_slab);
> return err;
> }
> --
> 2.3.3
>
>
>
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists