aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2006-07-25 11:28:18 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2006-09-22 23:24:29 -0400
commitcfcea3e8c66c2dcde98d5c2693d4bff50b5cac97 (patch)
treeee7b995a48c43de7355fa33079ee7aaad020d6f3 /include/linux
parent1c3c07e9f6cc50dab2aeb8051325e317d4f6c70e (diff)
NFS: Add a global LRU list for the ACCESS cache
...in order to allow the addition of a memory shrinker. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/nfs_fs.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/nfs_fs.h b/include/linux/nfs_fs.h
index cc013ed2e52e..a36e01cd6321 100644
--- a/include/linux/nfs_fs.h
+++ b/include/linux/nfs_fs.h
@@ -71,6 +71,7 @@
71 */ 71 */
72struct nfs_access_entry { 72struct nfs_access_entry {
73 struct rb_node rb_node; 73 struct rb_node rb_node;
74 struct list_head lru;
74 unsigned long jiffies; 75 unsigned long jiffies;
75 struct rpc_cred * cred; 76 struct rpc_cred * cred;
76 int mask; 77 int mask;
@@ -148,6 +149,8 @@ struct nfs_inode {
148 atomic_t data_updates; 149 atomic_t data_updates;
149 150
150 struct rb_root access_cache; 151 struct rb_root access_cache;
152 struct list_head access_cache_entry_lru;
153 struct list_head access_cache_inode_lru;
151#ifdef CONFIG_NFS_V3_ACL 154#ifdef CONFIG_NFS_V3_ACL
152 struct posix_acl *acl_access; 155 struct posix_acl *acl_access;
153 struct posix_acl *acl_default; 156 struct posix_acl *acl_default;
@@ -201,6 +204,7 @@ struct nfs_inode {
201#define NFS_INO_REVALIDATING (0) /* revalidating attrs */ 204#define NFS_INO_REVALIDATING (0) /* revalidating attrs */
202#define NFS_INO_ADVISE_RDPLUS (1) /* advise readdirplus */ 205#define NFS_INO_ADVISE_RDPLUS (1) /* advise readdirplus */
203#define NFS_INO_STALE (2) /* possible stale inode */ 206#define NFS_INO_STALE (2) /* possible stale inode */
207#define NFS_INO_ACL_LRU_SET (3) /* Inode is on the LRU list */
204 208
205static inline struct nfs_inode *NFS_I(struct inode *inode) 209static inline struct nfs_inode *NFS_I(struct inode *inode)
206{ 210{