diff options
author | Tingmao Wang <m@maowtm.org> | 2025-04-06 17:18:42 +0100 |
---|---|---|
committer | Dominique Martinet <asmadeus@codewreck.org> | 2025-08-23 15:34:46 +0900 |
commit | 290434474c332a2ba9c8499fe699c7f2e1153280 (patch) | |
tree | 831cec0eafb237ac24cbb6a38b9e48d410f84875 /tools/docs/parse-headers.py | |
parent | 8f5ae30d69d7543eee0d70083daf4de8fe15d585 (diff) |
fs/9p: Refresh metadata in d_revalidate for uncached mode too
Currently if another process keeps a file open, due to existing dentry in
the dcache, other processes will not see updated metadata of that file if
it is changed on the server, even in uncached mode.
This can also manifest as -ENODATA when reading a file that has shrunk on
the server (even if it's re-opened in another process), or -ENOTSUPP if
the file has changed type (e.g. regular file to directory) on the server.
We can end up in a situation where both `readdir` or `read` fails until
the file is closed by all processes using it.
This commit fixes that, and invalidates the dentry altogether if the inode
type is changed (for uncached mode).
Signed-off-by: Tingmao Wang <m@maowtm.org>
Message-ID: <bfac417f65cc1d6812be822f8913f0d4ba0c1052.1743956147.git.m@maowtm.org>
Signed-off-by: Dominique Martinet <asmadeus@codewreck.org>
Diffstat (limited to 'tools/docs/parse-headers.py')
0 files changed, 0 insertions, 0 deletions