Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 61447
b: refs/heads/master
c: a9933ce
h: refs/heads/master
i:
  61445: 3934de7
  61443: 2e9852a
  61439: aaeee93
v: v3
  • Loading branch information
J. Bruce Fields committed Jul 18, 2007
1 parent 0fc4ad7 commit 7dbdf6f
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 15 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 6d5e8b05caf074ae5676ad9aaf92e381226a14a7
refs/heads/master: a9933cea7a1d80dd9efae9f1acd857f5dce742b9
15 changes: 7 additions & 8 deletions trunk/fs/locks.c
Original file line number Diff line number Diff line change
Expand Up @@ -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
* @arg: type of lease to obtain
* @flp: input - file_lock to use, output - file_lock inserted
Expand All @@ -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)
static 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;
Expand Down Expand Up @@ -1423,7 +1423,7 @@ static int __setlease(struct file *filp, long arg, struct file_lock **flp)
}

/**
* setlease - sets a lease on an open file
* vfs_setlease - sets a lease on an open file
* @filp: file pointer
* @arg: type of lease to obtain
* @lease: file_lock to use
Expand All @@ -1432,18 +1432,17 @@ static int __setlease(struct file *filp, long arg, struct file_lock **flp)
* 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;

lock_kernel();
error = __setlease(filp, arg, lease);
error = setlease(filp, arg, lease);
unlock_kernel();

return error;
}

EXPORT_SYMBOL(setlease);
EXPORT_SYMBOL_GPL(vfs_setlease);

/**
* fcntl_setlease - sets a lease on an open file
Expand All @@ -1469,7 +1468,7 @@ int fcntl_setlease(unsigned int fd, struct file *filp, long arg)

lock_kernel();

error = __setlease(filp, arg, &flp);
error = vfs_setlease(filp, arg, &flp);
if (error || arg == F_UNLCK)
goto out_unlock;

Expand Down
10 changes: 5 additions & 5 deletions trunk/fs/nfsd/nfs4state.c
Original file line number Diff line number Diff line change
Expand Up @@ -256,7 +256,7 @@ nfs4_close_delegation(struct nfs4_delegation *dp)
/* The following nfsd_close may not actually close the file,
* but we want to remove the lease in any case. */
if (dp->dl_flock)
setlease(filp, F_UNLCK, &dp->dl_flock);
vfs_setlease(filp, F_UNLCK, &dp->dl_flock);
nfsd_close(filp);
}

Expand Down Expand Up @@ -1402,7 +1402,7 @@ void nfsd_release_deleg_cb(struct file_lock *fl)
/*
* Set the delegation file_lock back pointer.
*
* Called from __setlease() with lock_kernel() held.
* Called from setlease() with lock_kernel() held.
*/
static
void nfsd_copy_lock_deleg_cb(struct file_lock *new, struct file_lock *fl)
Expand All @@ -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
int nfsd_same_client_deleg_cb(struct file_lock *onlist, struct file_lock *try)
Expand Down Expand Up @@ -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_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
*/
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))) {
dprintk("NFSD: setlease failed [%d], no delegation\n", status);
unhash_delegation(dp);
Expand Down
2 changes: 1 addition & 1 deletion trunk/include/linux/fs.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 __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);
extern int lock_may_write(struct inode *, loff_t start, unsigned long count);
Expand Down

0 comments on commit 7dbdf6f

Please sign in to comment.