diff options
author | Martin Brandenburg <martin@omnibond.com> | 2019-02-12 20:19:06 +0000 |
---|---|---|
committer | Mike Marshall <hubcap@omnibond.com> | 2019-05-03 14:32:39 -0400 |
commit | 8f04e1be784858ba0288c7c09b9de06627a800c9 (patch) | |
tree | bf777bf20b50e8904de6be0f63f452b4246a9909 /fs/orangefs/orangefs-kernel.h | |
parent | c472ebc25555e634d89e1ed508d37c9102bff017 (diff) |
orangefs: add orangefs_revalidate_mapping
This is modeled after NFS, except our method is different. We use a
simple timer to determine whether to invalidate the page cache. This
is bound to perform.
This addes a sysfs parameter cache_timeout_msecs which controls the time
between page cache invalidations.
Signed-off-by: Martin Brandenburg <martin@omnibond.com>
Signed-off-by: Mike Marshall <hubcap@omnibond.com>
Diffstat (limited to 'fs/orangefs/orangefs-kernel.h')
-rw-r--r-- | fs/orangefs/orangefs-kernel.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/orangefs/orangefs-kernel.h b/fs/orangefs/orangefs-kernel.h index 336a3ec0b83e..87beab10326a 100644 --- a/fs/orangefs/orangefs-kernel.h +++ b/fs/orangefs/orangefs-kernel.h @@ -193,9 +193,11 @@ struct orangefs_inode_s { sector_t last_failed_block_index_read; unsigned long getattr_time; + unsigned long mapping_time; int attr_valid; kuid_t attr_uid; kgid_t attr_gid; + unsigned long bitlock; DECLARE_HASHTABLE(xattr_cache, 4); }; @@ -390,6 +392,7 @@ bool __is_daemon_in_service(void); /* * defined in file.c */ +int orangefs_revalidate_mapping(struct inode *); ssize_t wait_for_direct_io(enum ORANGEFS_io_type, struct inode *, loff_t *, struct iov_iter *, size_t, loff_t, struct orangefs_write_range *); ssize_t do_readv_writev(enum ORANGEFS_io_type, struct file *, loff_t *, @@ -427,6 +430,7 @@ int orangefs_normalize_to_errno(__s32 error_code); extern struct mutex orangefs_request_mutex; extern int op_timeout_secs; extern int slot_timeout_secs; +extern int orangefs_cache_timeout_msecs; extern int orangefs_dcache_timeout_msecs; extern int orangefs_getattr_timeout_msecs; extern struct list_head orangefs_superblocks; |