aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJ. Bruce Fields <bfields@citi.umich.edu>2007-07-04 17:21:37 -0400
committerJ. Bruce Fields <bfields@citi.umich.edu>2007-07-18 19:17:06 -0400
commit4698afe8e3a725576366f86560a8a8242b21b9f7 (patch)
treedfa312e0a6bce21a6f502b8b9cf0844281d094a2
parentlocks: provide a file lease method enabling cluster-coherent leases (diff)
downloadlinux-dev-4698afe8e3a725576366f86560a8a8242b21b9f7.tar.xz
linux-dev-4698afe8e3a725576366f86560a8a8242b21b9f7.zip
locks: export setlease to filesystems
Export setlease so it can used by filesystems to implement their lease methods. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
-rw-r--r--fs/locks.c3
-rw-r--r--include/linux/fs.h1
2 files changed, 3 insertions, 1 deletions
diff --git a/fs/locks.c b/fs/locks.c
index 94f5d8065e3a..4c73b857dded 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -1336,7 +1336,7 @@ int fcntl_getlease(struct file *filp)
*
* Called with kernel lock held.
*/
-static int setlease(struct file *filp, long arg, struct file_lock **flp)
+int setlease(struct file *filp, long arg, struct file_lock **flp)
{
struct file_lock *fl, **before, **my_before = NULL, *lease;
struct dentry *dentry = filp->f_path.dentry;
@@ -1421,6 +1421,7 @@ static int setlease(struct file *filp, long arg, struct file_lock **flp)
out:
return error;
}
+EXPORT_SYMBOL(setlease);
/**
* vfs_setlease - sets a lease on an open file
diff --git a/include/linux/fs.h b/include/linux/fs.h
index c8ddf34e9710..b188c2e5338d 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -872,6 +872,7 @@ extern int vfs_cancel_lock(struct file *filp, struct file_lock *fl);
extern int flock_lock_file_wait(struct file *filp, struct file_lock *fl);
extern int __break_lease(struct inode *inode, unsigned int flags);
extern void lease_get_mtime(struct inode *, struct timespec *time);
+extern int setlease(struct file *, long, struct file_lock **);
extern int vfs_setlease(struct file *, long, struct file_lock **);
extern int lease_modify(struct file_lock **, int);
extern int lock_may_read(struct inode *, loff_t start, unsigned long count);