Revert "fs/9p: remove redundant pointer v9ses"
authorDominique Martinet <asmadeus@codewreck.org>
Wed, 23 Oct 2024 23:52:11 +0000 (08:52 +0900)
committerDominique Martinet <asmadeus@codewreck.org>
Thu, 24 Oct 2024 21:26:09 +0000 (06:26 +0900)
This reverts commit 10211b4a23cf4a3df5c11a10e5b3d371f16a906f.

This is a requirement to revert commit 724a08450f74 ("fs/9p: simplify
iget to remove unnecessary paths"), see that revert for details.

Fixes: 724a08450f74 ("fs/9p: simplify iget to remove unnecessary paths")
Reported-by: Will Deacon <will@kernel.org>
Link: https://lkml.kernel.org/r/20240923100508.GA32066@willie-the-truck
Cc: stable@vger.kernel.org # v6.9+
Message-ID: <20241024-revert_iget-v1-2-4cac63d25f72@codewreck.org>
Signed-off-by: Dominique Martinet <asmadeus@codewreck.org>
fs/9p/vfs_inode_dotl.c

index 55dde186041a38d98c997e2ea728e2004c2a9606..2b313fe7003e4806d3e14e0dea0aa164fe1d8e11 100644 (file)
@@ -297,6 +297,7 @@ static int v9fs_vfs_mkdir_dotl(struct mnt_idmap *idmap,
                               umode_t omode)
 {
        int err;
+       struct v9fs_session_info *v9ses;
        struct p9_fid *fid = NULL, *dfid = NULL;
        kgid_t gid;
        const unsigned char *name;
@@ -306,6 +307,7 @@ static int v9fs_vfs_mkdir_dotl(struct mnt_idmap *idmap,
        struct posix_acl *dacl = NULL, *pacl = NULL;
 
        p9_debug(P9_DEBUG_VFS, "name %pd\n", dentry);
+       v9ses = v9fs_inode2v9ses(dir);
 
        omode |= S_IFDIR;
        if (dir->i_mode & S_ISGID)
@@ -737,6 +739,7 @@ v9fs_vfs_mknod_dotl(struct mnt_idmap *idmap, struct inode *dir,
        kgid_t gid;
        const unsigned char *name;
        umode_t mode;
+       struct v9fs_session_info *v9ses;
        struct p9_fid *fid = NULL, *dfid = NULL;
        struct inode *inode;
        struct p9_qid qid;
@@ -746,6 +749,7 @@ v9fs_vfs_mknod_dotl(struct mnt_idmap *idmap, struct inode *dir,
                 dir->i_ino, dentry, omode,
                 MAJOR(rdev), MINOR(rdev));
 
+       v9ses = v9fs_inode2v9ses(dir);
        dfid = v9fs_parent_fid(dentry);
        if (IS_ERR(dfid)) {
                err = PTR_ERR(dfid);