]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
fs/9p: remove erroneous nlink init from legacy stat2inode
authorEric Van Hensbergen <ericvh@kernel.org>
Tue, 9 Apr 2024 23:53:00 +0000 (23:53 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 17 May 2024 10:14:49 +0000 (12:14 +0200)
[ Upstream commit 6e45a30fe5e7cf5d42ac07262a3d97644f23dc68 ]

In 9p2000 legacy mode, stat2inode initializes nlink to 1,
which is redundant with what alloc_inode should have already set.
9p2000.u overrides this with extensions if present in the stat
structure, and 9p2000.L incorporates nlink into its stat structure.

At the very least this probably messes with directory nlink
accounting in legacy mode.

Signed-off-by: Eric Van Hensbergen <ericvh@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/9p/vfs_inode.c

index 7ba7efe47b40d64a13408659869aed8079df5c22..0fde0ab77eff6b34d2f9317d596fe701be82824a 100644 (file)
@@ -1152,8 +1152,6 @@ v9fs_stat2inode(struct p9_wstat *stat, struct inode *inode,
        struct v9fs_session_info *v9ses = sb->s_fs_info;
        struct v9fs_inode *v9inode = V9FS_I(inode);
 
-       set_nlink(inode, 1);
-
        inode_set_atime(inode, stat->atime, 0);
        inode_set_mtime(inode, stat->mtime, 0);
        inode_set_ctime(inode, stat->mtime, 0);