summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTheodore Ts'o <tytso@mit.edu>2018-11-06 17:18:17 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-11-21 09:24:12 +0100
commitbf04dace8318d6ae20a11c9e7692f36d9e387c23 (patch)
tree71dab5c7d58a651ed66191af9e093ff3b1a682e6
parent65b1ce496c490e74b88f6fafc84a3eed756807a4 (diff)
downloadlinux-exynos-bf04dace8318d6ae20a11c9e7692f36d9e387c23.tar.gz
linux-exynos-bf04dace8318d6ae20a11c9e7692f36d9e387c23.tar.bz2
linux-exynos-bf04dace8318d6ae20a11c9e7692f36d9e387c23.zip
ext4: avoid possible double brelse() in add_new_gdb() on error path
commit 4f32c38b4662312dd3c5f113d8bdd459887fb773 upstream. Fixes: b40971426a83 ("ext4: add error checking to calls to ...") Reported-by: Vasily Averin <vvs@virtuozzo.com> Signed-off-by: Theodore Ts'o <tytso@mit.edu> Cc: stable@kernel.org # 2.6.38 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--fs/ext4/resize.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ext4/resize.c b/fs/ext4/resize.c
index c2cbd21bf023..deebb8842c82 100644
--- a/fs/ext4/resize.c
+++ b/fs/ext4/resize.c
@@ -846,6 +846,7 @@ static int add_new_gdb(handle_t *handle, struct inode *inode,
err = ext4_handle_dirty_metadata(handle, NULL, gdb_bh);
if (unlikely(err)) {
ext4_std_error(sb, err);
+ iloc.bh = NULL;
goto exit_inode;
}
brelse(dind);