]> www.infradead.org Git - users/hch/misc.git/commitdiff
fs/9p: Invalidate dentry if inode type change detected in cached mode
authorTingmao Wang <m@maowtm.org>
Sun, 6 Apr 2025 16:18:43 +0000 (17:18 +0100)
committerDominique Martinet <asmadeus@codewreck.org>
Sat, 23 Aug 2025 06:34:46 +0000 (15:34 +0900)
This is an extension of the last commit to cached mode as well.  While
server-side changes when using cached mode is not expected, when it does
happen we can get things like -EOPNOTSUPP.  With this change at least when
we realize the inode has updated (for example after a `touch` on the
client), we can get a new one.

Signed-off-by: Tingmao Wang <m@maowtm.org>
Message-ID: <01afd3c77d5cda181780dc931baa8f3fc54562c8.1743956147.git.m@maowtm.org>
Signed-off-by: Dominique Martinet <asmadeus@codewreck.org>
fs/9p/vfs_dentry.c

index ffa45ee38f83e35ebc6059815e1424139efc9b11..ddf7424b5850cbf25eb50560e6791097ee7fd555 100644 (file)
@@ -97,7 +97,7 @@ static int __v9fs_lookup_revalidate(struct dentry *dentry, unsigned int flags)
 
                if (retval == -ENOENT)
                        return 0;
-               if (!cached && v9inode->cache_validity & V9FS_INO_INVALID_ATTR)
+               if (v9inode->cache_validity & V9FS_INO_INVALID_ATTR)
                        return 0;
                if (retval < 0)
                        return retval;