ubifs: dent: Fix some potential memory leaks while iterating entries
authorZhihao Cheng <chengzhihao1@huawei.com>
Mon, 1 Jun 2020 09:10:37 +0000 (17:10 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 10 Nov 2020 09:23:58 +0000 (10:23 +0100)
commit 58f6e78a65f1fcbf732f60a7478ccc99873ff3ba upstream.

Fix some potential memory leaks in error handling branches while
iterating dent entries. For example, function dbg_check_dir()
forgets to free pdent if it exists.

Signed-off-by: Zhihao Cheng <chengzhihao1@huawei.com>
Cc: <stable@vger.kernel.org>
Fixes: 1e51764a3c2ac05a2 ("UBIFS: add new flash file system")
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/ubifs/debug.c

index 69e287e20732724a5e9a0e50ecdafebe8e801a93..8223e43309810bfd64c8d099841baa3ee32cbaba 100644 (file)
@@ -1125,6 +1125,7 @@ int dbg_check_dir(struct ubifs_info *c, const struct inode *dir)
                        err = PTR_ERR(dent);
                        if (err == -ENOENT)
                                break;
+                       kfree(pdent);
                        return err;
                }