diff options
author | Miklos Szeredi <mszeredi@redhat.com> | 2018-10-01 11:07:04 +0300 |
---|---|---|
committer | Miklos Szeredi <mszeredi@redhat.com> | 2018-10-01 11:07:04 +0300 |
commit | 7118883b44b8edfea732aadeb0d4424da3f152b2 (patch) | |
tree | bded501b21b8493499fb0eda642fae6fdd2413b8 /fs/fuse/fuse_i.h | |
parent | 3494927e090bf511e54eecaf33a8e56e5c0463db (diff) | |
download | linux-7118883b44b8edfea732aadeb0d4424da3f152b2.tar.xz |
fuse: use mtime for readdir cache verification
Store the modification time of the directory in the cache, obtained before
starting to fill the cache.
When reading the cache, verify that the directory hasn't changed, by
checking if current modification time is the same as the one stored in the
cache.
This only needs to be done when the current file position is at the
beginning of the directory, as mandated by POSIX.
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Diffstat (limited to 'fs/fuse/fuse_i.h')
-rw-r--r-- | fs/fuse/fuse_i.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/fuse/fuse_i.h b/fs/fuse/fuse_i.h index 8b24805e62ee..3deb013a289e 100644 --- a/fs/fuse/fuse_i.h +++ b/fs/fuse/fuse_i.h @@ -117,6 +117,9 @@ struct fuse_inode { /* version of the cache */ u64 version; + /* modification time of directory when cache was started */ + struct timespec64 mtime; + /* protects above fields */ spinlock_t lock; } rdc; |