diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2018-04-02 23:56:44 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-04-24 09:36:38 +0200 |
commit | c780ac96e120081a1d2e892f47ce34245ef1cfb2 (patch) | |
tree | 8a4dd893a9c2b0c0795b5d9b38b86760bb5ccbbb /fs/jffs2 | |
parent | 22ec5ee71086284911b21339eaf4d2c2ec1df351 (diff) | |
download | linux-exynos-c780ac96e120081a1d2e892f47ce34245ef1cfb2.tar.gz linux-exynos-c780ac96e120081a1d2e892f47ce34245ef1cfb2.tar.bz2 linux-exynos-c780ac96e120081a1d2e892f47ce34245ef1cfb2.zip |
jffs2_kill_sb(): deal with failed allocations
commit c66b23c2840446a82c389e4cb1a12eb2a71fa2e4 upstream.
jffs2_fill_super() might fail to allocate jffs2_sb_info;
jffs2_kill_sb() must survive that.
Cc: stable@kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs/jffs2')
-rw-r--r-- | fs/jffs2/super.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/jffs2/super.c b/fs/jffs2/super.c index 153f1c6eb169..33e01de576d2 100644 --- a/fs/jffs2/super.c +++ b/fs/jffs2/super.c @@ -342,7 +342,7 @@ static void jffs2_put_super (struct super_block *sb) static void jffs2_kill_sb(struct super_block *sb) { struct jffs2_sb_info *c = JFFS2_SB_INFO(sb); - if (!sb_rdonly(sb)) + if (c && !sb_rdonly(sb)) jffs2_stop_garbage_collect_thread(c); kill_mtd_super(sb); kfree(c); |