mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-04 00:06:36 +00:00
btrfs: use BTRFS_PATH_AUTO_FREE in btrfs_get_name()
This is the trivial pattern for path auto free, initialize at the beginning and free at the end with some return simplifications. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
72f2bae3c1
commit
899c8798b5
1 changed files with 3 additions and 7 deletions
|
@ -223,7 +223,7 @@ static int btrfs_get_name(struct dentry *parent, char *name,
|
|||
struct btrfs_inode *dir = BTRFS_I(d_inode(parent));
|
||||
struct btrfs_root *root = dir->root;
|
||||
struct btrfs_fs_info *fs_info = root->fs_info;
|
||||
struct btrfs_path *path;
|
||||
BTRFS_PATH_AUTO_FREE(path);
|
||||
struct btrfs_inode_ref *iref;
|
||||
struct btrfs_root_ref *rref;
|
||||
struct extent_buffer *leaf;
|
||||
|
@ -255,15 +255,12 @@ static int btrfs_get_name(struct dentry *parent, char *name,
|
|||
|
||||
ret = btrfs_search_slot(NULL, root, &key, path, 0, 0);
|
||||
if (ret < 0) {
|
||||
btrfs_free_path(path);
|
||||
return ret;
|
||||
} else if (ret > 0) {
|
||||
if (ino == BTRFS_FIRST_FREE_OBJECTID) {
|
||||
if (ino == BTRFS_FIRST_FREE_OBJECTID)
|
||||
path->slots[0]--;
|
||||
} else {
|
||||
btrfs_free_path(path);
|
||||
else
|
||||
return -ENOENT;
|
||||
}
|
||||
}
|
||||
leaf = path->nodes[0];
|
||||
|
||||
|
@ -280,7 +277,6 @@ static int btrfs_get_name(struct dentry *parent, char *name,
|
|||
}
|
||||
|
||||
read_extent_buffer(leaf, name, name_ptr, name_len);
|
||||
btrfs_free_path(path);
|
||||
|
||||
/*
|
||||
* have to add the null termination to make sure that reconnect_path
|
||||
|
|
Loading…
Add table
Reference in a new issue