summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/backref.c
diff options
context:
space:
mode:
authorBoleyn Su <boleynsu@google.com>2020-08-06 08:31:44 +0200
committerDavid Sterba <dsterba@suse.com>2020-08-10 19:50:54 +0200
commitc15c2ec07a26b251040943a1a9f90d3037f041e5 (patch)
tree237dad00fd4bc1bc0ae6d226cfec559da6dc7531 /fs/btrfs/backref.c
parentbtrfs: make sure SB_I_VERSION doesn't get unset by remount (diff)
downloadlinux-c15c2ec07a26b251040943a1a9f90d3037f041e5.tar.xz
linux-c15c2ec07a26b251040943a1a9f90d3037f041e5.zip
btrfs: check correct variable after allocation in btrfs_backref_iter_alloc
The `if (!ret)` check will always be false and it may result in ret->path being dereferenced while it is a NULL pointer. Fixes: a37f232b7b65 ("btrfs: backref: introduce the skeleton of btrfs_backref_iter") CC: stable@vger.kernel.org # 5.8+ Reviewed-by: Nikolay Borisov <nborisov@suse.com> Reviewed-by: Qu Wenruo <wqu@suse.com> Signed-off-by: Boleyn Su <boleynsu@google.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/backref.c')
-rw-r--r--fs/btrfs/backref.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/btrfs/backref.c b/fs/btrfs/backref.c
index ea10f7bc99ab..ea1c28ccb44f 100644
--- a/fs/btrfs/backref.c
+++ b/fs/btrfs/backref.c
@@ -2303,7 +2303,7 @@ struct btrfs_backref_iter *btrfs_backref_iter_alloc(
return NULL;
ret->path = btrfs_alloc_path();
- if (!ret) {
+ if (!ret->path) {
kfree(ret);
return NULL;
}