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

btrfs: rename btrfs_check_shared() to a more descriptive name



The function btrfs_check_shared() is supposed to be used to check if a
data extent is shared, but its name is too generic, may easily cause
confusion in the sense that it may be used for metadata extents.

So rename it to btrfs_is_data_extent_shared(), which will also make it
less confusing after the next change that adds a backref lookup cache for
the b+tree nodes that lead to the leaf that contains the file extent item
that points to the target data extent.

Reviewed-by: default avatarJosef Bacik <josef@toxicpanda.com>
Reviewed-by: default avatarQu Wenruo <wqu@suse.com>
Signed-off-by: default avatarFilipe Manana <fdmanana@suse.com>
Reviewed-by: default avatarDavid Sterba <dsterba@suse.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent 09fbc1c8
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -1511,8 +1511,8 @@ int btrfs_find_all_roots(struct btrfs_trans_handle *trans,
	return ret;
}

/**
 * Check if an extent is shared or not
/*
 * Check if a data extent is shared or not.
 *
 * @root:   root inode belongs to
 * @inum:   inode number of the inode whose extent we are checking
@@ -1520,7 +1520,7 @@ int btrfs_find_all_roots(struct btrfs_trans_handle *trans,
 * @roots:  list of roots this extent is shared among
 * @tmp:    temporary list used for iteration
 *
 * btrfs_check_shared uses the backref walking code but will short
 * btrfs_is_data_extent_shared uses the backref walking code but will short
 * circuit as soon as it finds a root or inode that doesn't match the
 * one passed in. This provides a significant performance benefit for
 * callers (such as fiemap) which want to know whether the extent is
@@ -1531,7 +1531,7 @@ int btrfs_find_all_roots(struct btrfs_trans_handle *trans,
 *
 * Return: 0 if extent is not shared, 1 if it is shared, < 0 on error.
 */
int btrfs_check_shared(struct btrfs_root *root, u64 inum, u64 bytenr,
int btrfs_is_data_extent_shared(struct btrfs_root *root, u64 inum, u64 bytenr,
				struct ulist *roots, struct ulist *tmp)
{
	struct btrfs_fs_info *fs_info = root->fs_info;
+2 −2
Original line number Diff line number Diff line
@@ -62,8 +62,8 @@ int btrfs_find_one_extref(struct btrfs_root *root, u64 inode_objectid,
			  u64 start_off, struct btrfs_path *path,
			  struct btrfs_inode_extref **ret_extref,
			  u64 *found_off);
int btrfs_check_shared(struct btrfs_root *root, u64 inum, u64 bytenr,
		struct ulist *roots, struct ulist *tmp_ulist);
int btrfs_is_data_extent_shared(struct btrfs_root *root, u64 inum, u64 bytenr,
				struct ulist *roots, struct ulist *tmp);

int __init btrfs_prelim_ref_init(void);
void __cold btrfs_prelim_ref_exit(void);
+3 −2
Original line number Diff line number Diff line
@@ -5585,8 +5585,9 @@ int extent_fiemap(struct btrfs_inode *inode, struct fiemap_extent_info *fieinfo,
			 * then we're just getting a count and we can skip the
			 * lookup stuff.
			 */
			ret = btrfs_check_shared(root, btrfs_ino(inode),
						 bytenr, roots, tmp_ulist);
			ret = btrfs_is_data_extent_shared(root, btrfs_ino(inode),
							  bytenr, roots,
							  tmp_ulist);
			if (ret < 0)
				goto out_free;
			if (ret)