[PATCH][next] fs/ntfs3: Fix a memory leak on object opts

From: Colin King
Date: Fri Sep 10 2021 - 06:02:07 EST


From: Colin Ian King <colin.king@xxxxxxxxxxxxx>

Currently a failed allocation on sbi->upcase will cause an exit via
the label free_sbi causing a memory leak on object opts. Fix this by
re-ordering the exit paths free_opts and free_sbi so that kfree's occur
in the reverse allocation order.

Addresses-Coverity: ("Resource leak")
Fixes: 27fac77707a1 ("fs/ntfs3: Init spi more in init_fs_context than fill_super")
Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
---
fs/ntfs3/super.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/ntfs3/super.c b/fs/ntfs3/super.c
index 3cba0b5e7ac7..69f23db0d727 100644
--- a/fs/ntfs3/super.c
+++ b/fs/ntfs3/super.c
@@ -1450,10 +1450,10 @@ static int ntfs_init_fs_context(struct fs_context *fc)
fc->ops = &ntfs_context_ops;

return 0;
-free_opts:
- kfree(opts);
free_sbi:
kfree(sbi);
+free_opts:
+ kfree(opts);
return -ENOMEM;
}

--
2.32.0