diff options
author | Kent Overstreet <kent.overstreet@linux.dev> | 2024-04-02 20:42:07 -0400 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2024-04-03 17:50:22 -0400 |
commit | 0f14bcb1cc0fed4485533033f33b74c00eef16fc (patch) | |
tree | 6b136ea4c02d3de3e80a58face55200605a84873 | |
parent | a442b0149af9ea66c04eb8dc4156c54058aa7485 (diff) |
Revert "fs/9p: Eliminate now unused v9fs_get_inode"
This reverts commit f61c906a7dffaa21b28c52000a75f2c6554a8199.
-rw-r--r-- | fs/9p/v9fs_vfs.h | 2 | ||||
-rw-r--r-- | fs/9p/vfs_inode.c | 30 |
2 files changed, 32 insertions, 0 deletions
diff --git a/fs/9p/v9fs_vfs.h b/fs/9p/v9fs_vfs.h index 6873850ad93e..0e8418066a48 100644 --- a/fs/9p/v9fs_vfs.h +++ b/fs/9p/v9fs_vfs.h @@ -40,6 +40,8 @@ extern struct kmem_cache *v9fs_inode_cache; struct inode *v9fs_alloc_inode(struct super_block *sb); void v9fs_free_inode(struct inode *inode); +struct inode *v9fs_get_inode(struct super_block *sb, umode_t mode, + dev_t rdev); void v9fs_set_netfs_context(struct inode *inode); int v9fs_init_inode(struct v9fs_session_info *v9ses, struct inode *inode, umode_t mode, dev_t rdev); diff --git a/fs/9p/vfs_inode.c b/fs/9p/vfs_inode.c index 8da32de3c318..32572982f72e 100644 --- a/fs/9p/vfs_inode.c +++ b/fs/9p/vfs_inode.c @@ -332,6 +332,36 @@ error: } /** + * v9fs_get_inode - helper function to setup an inode + * @sb: superblock + * @mode: mode to setup inode with + * @rdev: The device numbers to set + */ + +struct inode *v9fs_get_inode(struct super_block *sb, umode_t mode, dev_t rdev) +{ + int err; + struct inode *inode; + struct v9fs_session_info *v9ses = sb->s_fs_info; + + p9_debug(P9_DEBUG_VFS, "super block: %p mode: %ho\n", sb, mode); + + inode = new_inode(sb); + if (!inode) { + pr_warn("%s (%d): Problem allocating inode\n", + __func__, task_pid_nr(current)); + return ERR_PTR(-ENOMEM); + } + err = v9fs_init_inode(v9ses, inode, mode, rdev); + if (err) { + iput(inode); + return ERR_PTR(err); + } + v9fs_set_netfs_context(inode); + return inode; +} + +/** * v9fs_evict_inode - Remove an inode from the inode cache * @inode: inode to release * |