]> git.itanic.dy.fi Git - linux-stable/commitdiff
ext2: check err when partial != NULL
authorChengguang Xu <cgxu519@mykernel.net>
Tue, 5 Nov 2019 04:51:00 +0000 (12:51 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 17 Dec 2019 19:39:43 +0000 (20:39 +0100)
commit e705f4b8aa27a59f8933e8f384e9752f052c469c upstream.

Check err when partial == NULL is meaningless because
partial == NULL means getting branch successfully without
error.

CC: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20191105045100.7104-1-cgxu519@mykernel.net
Signed-off-by: Chengguang Xu <cgxu519@mykernel.net>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/ext2/inode.c

index a7c87d593083759becae63b528455200faf155a5..31c5a7b5f1f312da6edb49bf12372262b628c694 100644 (file)
@@ -699,10 +699,13 @@ static int ext2_get_blocks(struct inode *inode,
                if (!partial) {
                        count++;
                        mutex_unlock(&ei->truncate_mutex);
-                       if (err)
-                               goto cleanup;
                        goto got_it;
                }
+
+               if (err) {
+                       mutex_unlock(&ei->truncate_mutex);
+                       goto cleanup;
+               }
        }
 
        /*