diff options
author | Suresh Jayaraman <sjayaraman@suse.de> | 2010-07-05 08:42:27 -0400 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2010-08-02 08:40:36 -0400 |
commit | d03382ce9a89dbe27cba25130f0b90c0d631d5c5 (patch) | |
tree | f2561981a606a788259ad10f0ec57f9486f85da4 /fs/cifs/fscache.h | |
parent | 8913007e67106597fed4b9dd3787e8dca6915a83 (diff) |
cifs: define superblock-level cache index objects and register them
Define superblock-level cache index objects (managed by cifsTconInfo structs).
Each superblock object is created in a server-level index object and in itself
an index into which inode-level objects are inserted.
The superblock object is keyed by sharename. The UniqueId/IndexNumber is used to
validate that the exported share is the same since we accessed it last time.
Signed-off-by: Suresh Jayaraman <sjayaraman@suse.de>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/fscache.h')
-rw-r--r-- | fs/cifs/fscache.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/cifs/fscache.h b/fs/cifs/fscache.h index 8972306c58a5..d2ba628b72cd 100644 --- a/fs/cifs/fscache.h +++ b/fs/cifs/fscache.h | |||
@@ -29,6 +29,7 @@ | |||
29 | 29 | ||
30 | extern struct fscache_netfs cifs_fscache_netfs; | 30 | extern struct fscache_netfs cifs_fscache_netfs; |
31 | extern const struct fscache_cookie_def cifs_fscache_server_index_def; | 31 | extern const struct fscache_cookie_def cifs_fscache_server_index_def; |
32 | extern const struct fscache_cookie_def cifs_fscache_super_index_def; | ||
32 | 33 | ||
33 | extern int cifs_fscache_register(void); | 34 | extern int cifs_fscache_register(void); |
34 | extern void cifs_fscache_unregister(void); | 35 | extern void cifs_fscache_unregister(void); |
@@ -38,6 +39,8 @@ extern void cifs_fscache_unregister(void); | |||
38 | */ | 39 | */ |
39 | extern void cifs_fscache_get_client_cookie(struct TCP_Server_Info *); | 40 | extern void cifs_fscache_get_client_cookie(struct TCP_Server_Info *); |
40 | extern void cifs_fscache_release_client_cookie(struct TCP_Server_Info *); | 41 | extern void cifs_fscache_release_client_cookie(struct TCP_Server_Info *); |
42 | extern void cifs_fscache_get_super_cookie(struct cifsTconInfo *); | ||
43 | extern void cifs_fscache_release_super_cookie(struct cifsTconInfo *); | ||
41 | 44 | ||
42 | #else /* CONFIG_CIFS_FSCACHE */ | 45 | #else /* CONFIG_CIFS_FSCACHE */ |
43 | static inline int cifs_fscache_register(void) { return 0; } | 46 | static inline int cifs_fscache_register(void) { return 0; } |
@@ -47,6 +50,9 @@ static inline void | |||
47 | cifs_fscache_get_client_cookie(struct TCP_Server_Info *server) {} | 50 | cifs_fscache_get_client_cookie(struct TCP_Server_Info *server) {} |
48 | static inline void | 51 | static inline void |
49 | cifs_fscache_get_client_cookie(struct TCP_Server_Info *server); {} | 52 | cifs_fscache_get_client_cookie(struct TCP_Server_Info *server); {} |
53 | static inline void cifs_fscache_get_super_cookie(struct cifsTconInfo *tcon) {} | ||
54 | static inline void | ||
55 | cifs_fscache_release_super_cookie(struct cifsTconInfo *tcon) {} | ||
50 | 56 | ||
51 | #endif /* CONFIG_CIFS_FSCACHE */ | 57 | #endif /* CONFIG_CIFS_FSCACHE */ |
52 | 58 | ||