Commit c9024219 authored by Filipe Manana's avatar Filipe Manana Committed by David Sterba
Browse files

btrfs: remove checks for a root with id 0 during backref walking



When doing backref walking to determine if an extent is shared, we are
testing the root_objectid of the given share_check struct is 0, but that
is an impossible case, since btrfs_is_data_extent_shared() always
initializes the root_objectid field with the id of the given root, and
no root can have an objectid of 0. So remove those checks.

Signed-off-by: default avatarFilipe Manana <fdmanana@suse.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent 206c1d32
Loading
Loading
Loading
Loading
+2 −4
Original line number Diff line number Diff line
@@ -719,8 +719,7 @@ static int resolve_indirect_refs(struct btrfs_fs_info *fs_info,
			continue;
		}

		if (sc && sc->root_objectid &&
		    ref->root_id != sc->root_objectid) {
		if (sc && ref->root_id != sc->root_objectid) {
			free_pref(ref);
			ret = BACKREF_FOUND_SHARED;
			goto out;
@@ -1348,8 +1347,7 @@ static int find_parent_nodes(struct btrfs_trans_handle *trans,
		 * and would retain their original ref->count < 0.
		 */
		if (roots && ref->count && ref->root_id && ref->parent == 0) {
			if (sc && sc->root_objectid &&
			    ref->root_id != sc->root_objectid) {
			if (sc && ref->root_id != sc->root_objectid) {
				ret = BACKREF_FOUND_SHARED;
				goto out;
			}