Commit a9933cea authored by J. Bruce Fields's avatar J. Bruce Fields

locks: rename lease functions to reflect locks.c conventions

We've been using the convention that vfs_foo is the function that calls
a filesystem-specific foo method if it exists, or falls back on a
generic method if it doesn't; thus vfs_foo is what is called when some
other part of the kernel (normally lockd or nfsd) wants to get a lock,
whereas foo is what filesystems call to use the underlying local
functionality as part of their lock implementation.

So rename setlease to vfs_setlease (which will call a
filesystem-specific setlease after a later patch) and __setlease to
setlease.

Also, vfs_setlease need only be GPL-exported as long as it's only needed
by lockd and nfsd.
Signed-off-by: default avatar"J. Bruce Fields" <bfields@citi.umich.edu>
parent 6d5e8b05
...@@ -1326,7 +1326,7 @@ int fcntl_getlease(struct file *filp) ...@@ -1326,7 +1326,7 @@ int fcntl_getlease(struct file *filp)
} }
/** /**
* __setlease - sets a lease on an open file * setlease - sets a lease on an open file
* @filp: file pointer * @filp: file pointer
* @arg: type of lease to obtain * @arg: type of lease to obtain
* @flp: input - file_lock to use, output - file_lock inserted * @flp: input - file_lock to use, output - file_lock inserted
...@@ -1336,7 +1336,7 @@ int fcntl_getlease(struct file *filp) ...@@ -1336,7 +1336,7 @@ int fcntl_getlease(struct file *filp)
* *
* Called with kernel lock held. * Called with kernel lock held.
*/ */
static int __setlease(struct file *filp, long arg, struct file_lock **flp) static int setlease(struct file *filp, long arg, struct file_lock **flp)
{ {
struct file_lock *fl, **before, **my_before = NULL, *lease; struct file_lock *fl, **before, **my_before = NULL, *lease;
struct dentry *dentry = filp->f_path.dentry; struct dentry *dentry = filp->f_path.dentry;
...@@ -1423,7 +1423,7 @@ out: ...@@ -1423,7 +1423,7 @@ out:
} }
/** /**
* setlease - sets a lease on an open file * vfs_setlease - sets a lease on an open file
* @filp: file pointer * @filp: file pointer
* @arg: type of lease to obtain * @arg: type of lease to obtain
* @lease: file_lock to use * @lease: file_lock to use
...@@ -1432,18 +1432,17 @@ out: ...@@ -1432,18 +1432,17 @@ out:
* The fl_lmops fl_break function is required by break_lease * The fl_lmops fl_break function is required by break_lease
*/ */
int setlease(struct file *filp, long arg, struct file_lock **lease) int vfs_setlease(struct file *filp, long arg, struct file_lock **lease)
{ {
int error; int error;
lock_kernel(); lock_kernel();
error = __setlease(filp, arg, lease); error = setlease(filp, arg, lease);
unlock_kernel(); unlock_kernel();
return error; return error;
} }
EXPORT_SYMBOL_GPL(vfs_setlease);
EXPORT_SYMBOL(setlease);
/** /**
* fcntl_setlease - sets a lease on an open file * fcntl_setlease - sets a lease on an open file
...@@ -1469,7 +1468,7 @@ int fcntl_setlease(unsigned int fd, struct file *filp, long arg) ...@@ -1469,7 +1468,7 @@ int fcntl_setlease(unsigned int fd, struct file *filp, long arg)
lock_kernel(); lock_kernel();
error = __setlease(filp, arg, &flp); error = vfs_setlease(filp, arg, &flp);
if (error || arg == F_UNLCK) if (error || arg == F_UNLCK)
goto out_unlock; goto out_unlock;
......
...@@ -256,7 +256,7 @@ nfs4_close_delegation(struct nfs4_delegation *dp) ...@@ -256,7 +256,7 @@ nfs4_close_delegation(struct nfs4_delegation *dp)
/* The following nfsd_close may not actually close the file, /* The following nfsd_close may not actually close the file,
* but we want to remove the lease in any case. */ * but we want to remove the lease in any case. */
if (dp->dl_flock) if (dp->dl_flock)
setlease(filp, F_UNLCK, &dp->dl_flock); vfs_setlease(filp, F_UNLCK, &dp->dl_flock);
nfsd_close(filp); nfsd_close(filp);
} }
...@@ -1402,7 +1402,7 @@ void nfsd_release_deleg_cb(struct file_lock *fl) ...@@ -1402,7 +1402,7 @@ void nfsd_release_deleg_cb(struct file_lock *fl)
/* /*
* Set the delegation file_lock back pointer. * Set the delegation file_lock back pointer.
* *
* Called from __setlease() with lock_kernel() held. * Called from setlease() with lock_kernel() held.
*/ */
static static
void nfsd_copy_lock_deleg_cb(struct file_lock *new, struct file_lock *fl) void nfsd_copy_lock_deleg_cb(struct file_lock *new, struct file_lock *fl)
...@@ -1416,7 +1416,7 @@ void nfsd_copy_lock_deleg_cb(struct file_lock *new, struct file_lock *fl) ...@@ -1416,7 +1416,7 @@ void nfsd_copy_lock_deleg_cb(struct file_lock *new, struct file_lock *fl)
} }
/* /*
* Called from __setlease() with lock_kernel() held * Called from setlease() with lock_kernel() held
*/ */
static static
int nfsd_same_client_deleg_cb(struct file_lock *onlist, struct file_lock *try) int nfsd_same_client_deleg_cb(struct file_lock *onlist, struct file_lock *try)
...@@ -1716,10 +1716,10 @@ nfs4_open_delegation(struct svc_fh *fh, struct nfsd4_open *open, struct nfs4_sta ...@@ -1716,10 +1716,10 @@ nfs4_open_delegation(struct svc_fh *fh, struct nfsd4_open *open, struct nfs4_sta
fl.fl_file = stp->st_vfs_file; fl.fl_file = stp->st_vfs_file;
fl.fl_pid = current->tgid; fl.fl_pid = current->tgid;
/* setlease checks to see if delegation should be handed out. /* vfs_setlease checks to see if delegation should be handed out.
* the lock_manager callbacks fl_mylease and fl_change are used * the lock_manager callbacks fl_mylease and fl_change are used
*/ */
if ((status = setlease(stp->st_vfs_file, if ((status = vfs_setlease(stp->st_vfs_file,
flag == NFS4_OPEN_DELEGATE_READ? F_RDLCK: F_WRLCK, &flp))) { flag == NFS4_OPEN_DELEGATE_READ? F_RDLCK: F_WRLCK, &flp))) {
dprintk("NFSD: setlease failed [%d], no delegation\n", status); dprintk("NFSD: setlease failed [%d], no delegation\n", status);
unhash_delegation(dp); unhash_delegation(dp);
......
...@@ -872,7 +872,7 @@ extern int vfs_cancel_lock(struct file *filp, struct file_lock *fl); ...@@ -872,7 +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 flock_lock_file_wait(struct file *filp, struct file_lock *fl);
extern int __break_lease(struct inode *inode, unsigned int flags); extern int __break_lease(struct inode *inode, unsigned int flags);
extern void lease_get_mtime(struct inode *, struct timespec *time); 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 lease_modify(struct file_lock **, int);
extern int lock_may_read(struct inode *, loff_t start, unsigned long count); extern int lock_may_read(struct inode *, loff_t start, unsigned long count);
extern int lock_may_write(struct inode *, loff_t start, unsigned long count); extern int lock_may_write(struct inode *, loff_t start, unsigned long count);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment