aboutsummaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorWei Yongjun <yongjun_wei@trendmicro.com.cn>2013-03-02 17:13:55 -0500
committerTheodore Ts'o <tytso@mit.edu>2013-03-02 17:13:55 -0500
commit3e36a16375eee390a9d80f99499fe630efa08128 (patch)
treec07bece14821d3b66c781b969c4ec0ed5ee37a26 /fs
parentdf05c1b85a88888b92725ef27ba70086f38fb083 (diff)
ext4: fix possible memory leak in ext4_remount()
'orig_data' is malloced in ext4_remount() and should be freed before leaving from the error handling cases, otherwise it will cause memory leak. Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn> Signed-off-by: "Theodore Ts'o" <tytso@mit.edu> Reviewed-by: Lukas Czerner <lczerner@redhat.com> Cc: stable@vger.kernel.org
Diffstat (limited to 'fs')
-rw-r--r--fs/ext4/super.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
index 1ae5860b30a3..6ac9c8a3eb08 100644
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
@@ -4543,6 +4543,7 @@ static int ext4_remount(struct super_block *sb, int *flags, char *data)
4543 if (!old_opts.s_qf_names[i]) { 4543 if (!old_opts.s_qf_names[i]) {
4544 for (j = 0; j < i; j++) 4544 for (j = 0; j < i; j++)
4545 kfree(old_opts.s_qf_names[j]); 4545 kfree(old_opts.s_qf_names[j]);
4546 kfree(orig_data);
4546 return -ENOMEM; 4547 return -ENOMEM;
4547 } 4548 }
4548 } else 4549 } else