Commit a0a5472a authored by Filipe Manana's avatar Filipe Manana Committed by David Sterba

btrfs: remove checks for a 0 inode number during backref walking

When doing backref walking to determine if an extent is shared, we are
testing if the inode number, stored in the 'inum' field of struct
share_check, is 0. However that can never be case, since the all instances
of the structure are created at btrfs_is_data_extent_shared(), which
always initializes it with the inode number from a fs tree (and the number
for any inode from any tree can never be 0). So remove the checks.
Signed-off-by: default avatarFilipe Manana <fdmanana@suse.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent c9024219
...@@ -1051,7 +1051,7 @@ static int add_inline_refs(const struct btrfs_fs_info *fs_info, ...@@ -1051,7 +1051,7 @@ static int add_inline_refs(const struct btrfs_fs_info *fs_info,
key.type = BTRFS_EXTENT_DATA_KEY; key.type = BTRFS_EXTENT_DATA_KEY;
key.offset = btrfs_extent_data_ref_offset(leaf, dref); key.offset = btrfs_extent_data_ref_offset(leaf, dref);
if (sc && sc->inum && key.objectid != sc->inum && if (sc && key.objectid != sc->inum &&
!sc->have_delayed_delete_refs) { !sc->have_delayed_delete_refs) {
ret = BACKREF_FOUND_SHARED; ret = BACKREF_FOUND_SHARED;
break; break;
...@@ -1152,7 +1152,7 @@ static int add_keyed_refs(struct btrfs_root *extent_root, ...@@ -1152,7 +1152,7 @@ static int add_keyed_refs(struct btrfs_root *extent_root,
key.type = BTRFS_EXTENT_DATA_KEY; key.type = BTRFS_EXTENT_DATA_KEY;
key.offset = btrfs_extent_data_ref_offset(leaf, dref); key.offset = btrfs_extent_data_ref_offset(leaf, dref);
if (sc && sc->inum && key.objectid != sc->inum && if (sc && key.objectid != sc->inum &&
!sc->have_delayed_delete_refs) { !sc->have_delayed_delete_refs) {
ret = BACKREF_FOUND_SHARED; ret = BACKREF_FOUND_SHARED;
break; break;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment