summaryrefslogtreecommitdiffstats
path: root/fs/afs/afs.h
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2007-07-15 23:40:12 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-16 09:05:43 -0700
commite8d6c554126b830217c5e9f549e0e21f865a0a8a (patch)
treec43219c6ef4e6a9b4f0ac46d6bd8b675dc249a8b /fs/afs/afs.h
parentb0fed3140f57c435d2783b698c5090f325c22bad (diff)
downloadlinux-stable-e8d6c554126b830217c5e9f549e0e21f865a0a8a.tar.gz
linux-stable-e8d6c554126b830217c5e9f549e0e21f865a0a8a.tar.bz2
linux-stable-e8d6c554126b830217c5e9f549e0e21f865a0a8a.zip
AFS: implement file locking
Implement file locking for AFS. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/afs/afs.h')
-rw-r--r--fs/afs/afs.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/fs/afs/afs.h b/fs/afs/afs.h
index 245257948140..c548aa346f0d 100644
--- a/fs/afs/afs.h
+++ b/fs/afs/afs.h
@@ -37,6 +37,13 @@ typedef enum {
AFS_FTYPE_SYMLINK = 3,
} afs_file_type_t;
+typedef enum {
+ AFS_LOCK_READ = 0, /* read lock request */
+ AFS_LOCK_WRITE = 1, /* write lock request */
+} afs_lock_type_t;
+
+#define AFS_LOCKWAIT (5 * 60) /* time until a lock times out (seconds) */
+
/*
* AFS file identifier
*/
@@ -120,6 +127,7 @@ struct afs_file_status {
struct afs_fid parent; /* parent dir ID for non-dirs only */
time_t mtime_client; /* last time client changed data */
time_t mtime_server; /* last time server changed data */
+ s32 lock_count; /* file lock count (0=UNLK -1=WRLCK +ve=#RDLCK */
};
/*