diff options
author | David Howells <dhowells@redhat.com> | 2009-04-03 11:42:37 -0400 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2009-04-03 11:42:37 -0400 |
commit | a6891645cf2ddd4778096848a864580e7258faba (patch) | |
tree | e0095e8b87e199e7310508fc3687660746860600 /fs/fscache/internal.h | |
parent | 7394daa8c61dfda4baa687f133748fa0b599b017 (diff) |
FS-Cache: Root index definition
Add a description of the root index of the cache for later patches to make use
of.
The root index is owned by FS-Cache itself. When a netfs requests caching
facilities, FS-Cache will, if one doesn't already exist, create an entry in
the root index with the key being the name of the netfs ("AFS" for example),
and the auxiliary data holding the index structure version supplied by the
netfs:
FSDEF
|
+-----------+
| |
NFS AFS
[v=1] [v=1]
If an entry with the appropriate name does already exist, the version is
compared. If the version is different, the entire subtree from that entry
will be discarded and a new entry created.
The new entry will be an index, and a cookie referring to it will be passed to
the netfs. This is then the root handle by which the netfs accesses the
cache. It can create whatever objects it likes in that index, including
further indices.
Signed-off-by: David Howells <dhowells@redhat.com>
Acked-by: Steve Dickson <steved@redhat.com>
Acked-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Acked-by: Al Viro <viro@zeniv.linux.org.uk>
Tested-by: Daire Byrne <Daire.Byrne@framestore.com>
Diffstat (limited to 'fs/fscache/internal.h')
-rw-r--r-- | fs/fscache/internal.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/fscache/internal.h b/fs/fscache/internal.h index 16f9f1f46e4d..4113af8d1660 100644 --- a/fs/fscache/internal.h +++ b/fs/fscache/internal.h | |||
@@ -28,6 +28,12 @@ | |||
28 | #define FSCACHE_MAX_THREADS 32 | 28 | #define FSCACHE_MAX_THREADS 32 |
29 | 29 | ||
30 | /* | 30 | /* |
31 | * fsc-fsdef.c | ||
32 | */ | ||
33 | extern struct fscache_cookie fscache_fsdef_index; | ||
34 | extern struct fscache_cookie_def fscache_fsdef_netfs_def; | ||
35 | |||
36 | /* | ||
31 | * fsc-histogram.c | 37 | * fsc-histogram.c |
32 | */ | 38 | */ |
33 | #ifdef CONFIG_FSCACHE_HISTOGRAM | 39 | #ifdef CONFIG_FSCACHE_HISTOGRAM |