mirror of
https://github.com/torvalds/linux.git
synced 2026-07-31 19:47:08 +02:00
btrfs: pass struct btrfs_inode to btrfs_iget_locked()
Pass a struct btrfs_inode to btrfs_inode() as it's an internal interface, allowing to remove some use of BTRFS_I. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
d36f84a849
commit
4ea2fb9c62
|
|
@ -5611,7 +5611,7 @@ static int btrfs_find_actor(struct inode *inode, void *opaque)
|
|||
args->root == BTRFS_I(inode)->root;
|
||||
}
|
||||
|
||||
static struct inode *btrfs_iget_locked(u64 ino, struct btrfs_root *root)
|
||||
static struct btrfs_inode *btrfs_iget_locked(u64 ino, struct btrfs_root *root)
|
||||
{
|
||||
struct inode *inode;
|
||||
struct btrfs_iget_args args;
|
||||
|
|
@ -5623,7 +5623,9 @@ static struct inode *btrfs_iget_locked(u64 ino, struct btrfs_root *root)
|
|||
inode = iget5_locked_rcu(root->fs_info->sb, hashval, btrfs_find_actor,
|
||||
btrfs_init_locked_inode,
|
||||
(void *)&args);
|
||||
return inode;
|
||||
if (!inode)
|
||||
return NULL;
|
||||
return BTRFS_I(inode);
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
@ -5633,22 +5635,22 @@ static struct inode *btrfs_iget_locked(u64 ino, struct btrfs_root *root)
|
|||
struct inode *btrfs_iget_path(u64 ino, struct btrfs_root *root,
|
||||
struct btrfs_path *path)
|
||||
{
|
||||
struct inode *inode;
|
||||
struct btrfs_inode *inode;
|
||||
int ret;
|
||||
|
||||
inode = btrfs_iget_locked(ino, root);
|
||||
if (!inode)
|
||||
return ERR_PTR(-ENOMEM);
|
||||
|
||||
if (!(inode->i_state & I_NEW))
|
||||
return inode;
|
||||
if (!(inode->vfs_inode.i_state & I_NEW))
|
||||
return &inode->vfs_inode;
|
||||
|
||||
ret = btrfs_read_locked_inode(BTRFS_I(inode), path);
|
||||
ret = btrfs_read_locked_inode(inode, path);
|
||||
if (ret)
|
||||
return ERR_PTR(ret);
|
||||
|
||||
unlock_new_inode(inode);
|
||||
return inode;
|
||||
unlock_new_inode(&inode->vfs_inode);
|
||||
return &inode->vfs_inode;
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
@ -5656,7 +5658,7 @@ struct inode *btrfs_iget_path(u64 ino, struct btrfs_root *root,
|
|||
*/
|
||||
struct inode *btrfs_iget(u64 ino, struct btrfs_root *root)
|
||||
{
|
||||
struct inode *inode;
|
||||
struct btrfs_inode *inode;
|
||||
struct btrfs_path *path;
|
||||
int ret;
|
||||
|
||||
|
|
@ -5664,20 +5666,20 @@ struct inode *btrfs_iget(u64 ino, struct btrfs_root *root)
|
|||
if (!inode)
|
||||
return ERR_PTR(-ENOMEM);
|
||||
|
||||
if (!(inode->i_state & I_NEW))
|
||||
return inode;
|
||||
if (!(inode->vfs_inode.i_state & I_NEW))
|
||||
return &inode->vfs_inode;
|
||||
|
||||
path = btrfs_alloc_path();
|
||||
if (!path)
|
||||
return ERR_PTR(-ENOMEM);
|
||||
|
||||
ret = btrfs_read_locked_inode(BTRFS_I(inode), path);
|
||||
ret = btrfs_read_locked_inode(inode, path);
|
||||
btrfs_free_path(path);
|
||||
if (ret)
|
||||
return ERR_PTR(ret);
|
||||
|
||||
unlock_new_inode(inode);
|
||||
return inode;
|
||||
unlock_new_inode(&inode->vfs_inode);
|
||||
return &inode->vfs_inode;
|
||||
}
|
||||
|
||||
static struct inode *new_simple_dir(struct inode *dir,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user