summaryrefslogtreecommitdiffstats
path: root/fs/ext4/resize.c
diff options
context:
space:
mode:
authorTheodore Ts'o <tytso@mit.edu>2014-09-03 15:33:00 +0200
committerTheodore Ts'o <tytso@mit.edu>2014-09-03 15:37:30 +0200
commita9cfcd63e8d206ce4235c355d857c4fbdf0f4587 (patch)
treef373a6fdd3347086b50c93ed16d164cb039f8dc1 /fs/ext4/resize.c
parentMerge tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kerne... (diff)
downloadlinux-a9cfcd63e8d206ce4235c355d857c4fbdf0f4587.tar.xz
linux-a9cfcd63e8d206ce4235c355d857c4fbdf0f4587.zip
ext4: avoid trying to kfree an ERR_PTR pointer
Thanks to Dan Carpenter for extending smatch to find bugs like this. (This was found using a development version of smatch.) Fixes: 36de928641ee48b2078d3fe9514242aaa2f92013 Reported-by: Dan Carpenter <dan.carpenter@oracle.com Signed-off-by: Theodore Ts'o <tytso@mit.edu> Cc: stable@vger.kernel.org
Diffstat (limited to 'fs/ext4/resize.c')
-rw-r--r--fs/ext4/resize.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/ext4/resize.c b/fs/ext4/resize.c
index bb0e80f03e2e..1e43b905ff98 100644
--- a/fs/ext4/resize.c
+++ b/fs/ext4/resize.c
@@ -575,6 +575,7 @@ handle_bb:
bh = bclean(handle, sb, block);
if (IS_ERR(bh)) {
err = PTR_ERR(bh);
+ bh = NULL;
goto out;
}
overhead = ext4_group_overhead_blocks(sb, group);
@@ -603,6 +604,7 @@ handle_ib:
bh = bclean(handle, sb, block);
if (IS_ERR(bh)) {
err = PTR_ERR(bh);
+ bh = NULL;
goto out;
}