Gitweb: http://git.kernel.org/linus/9b3f26c9110dcea62716aca9b8c68ceb482227ef
Commit: 9b3f26c9110dcea62716aca9b8c68ceb482227ef
Parent: 9ae326a69004dea8af2dae4fde58de27db700a8d
Author: David Howells <dhowells@redhat.com>
AuthorDate: Fri Apr 3 16:42:41 2009 +0100
Committer: David Howells <dhowells@redhat.com>
CommitDate: Fri Apr 3 16:42:41 2009 +0100
FS-Cache: Make kAFS use FS-Cache
The attached patch makes the kAFS filesystem in fs/afs/ use FS-Cache, and
through it any attached caches. The kAFS filesystem will use caching
automatically if it's available.
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>
---
fs/afs/Kconfig | 8 +
fs/afs/Makefile | 3 +
fs/afs/cache.c | 503 +++++++++++++++++++++++++++++++++------------------
fs/afs/cache.h | 15 +--
fs/afs/cell.c | 16 +-
fs/afs/file.c | 220 +++++++++++++++--------
fs/afs/inode.c | 31 ++--
fs/afs/internal.h | 53 +++---
fs/afs/main.c | 27 +--
fs/afs/mntpt.c | 4 +-
fs/afs/vlocation.c | 25 ++--
fs/afs/volume.c | 14 +-
fs/afs/write.c | 21 +++
13 files changed, 582 insertions(+), 358 deletions(-)
diff --git a/fs/afs/Kconfig b/fs/afs/Kconfig
index e7b522f..5c4e61d 100644
--- a/fs/afs/Kconfig
+++ b/fs/afs/Kconfig
@@ -19,3 +19,11 @@ config AFS_DEBUG
See <file:Documentation/filesystems/afs.txt> for more information.
If unsure, say N.
+
+config AFS_FSCACHE
+ bool "Provide AFS client caching support (EXPERIMENTAL)"
+ depends on EXPERIMENTAL
+ depends on AFS_FS=m && FSCACHE || AFS_FS=y && FSCACHE=y
+ help
+ Say Y here if you want AFS data to be cached locally on disk through
+ the generic filesystem cache manager
diff --git a/fs/afs/Makefile b/fs/afs/Makefile
index ...