Commit 1cb697f8 authored by William A. Adamson's avatar William A. Adamson Committed by Linus Torvalds

[PATCH] nfs4 lease: export remove_lease

Export remove_lease(), an interface to time_out_leases() with an
fl_break_time in the past.  needed by nfsd
Signed-off-by: default avatarAndy Adamson <andros@citi.umich.edu>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent d744ecf3
......@@ -1090,6 +1090,26 @@ static void time_out_leases(struct inode *inode)
}
}
/**
* remove_lease - let time_out_leases remove the lease.
* @@file_lock: the lease to remove
*/
void remove_lease(struct file_lock *fl)
{
if (!IS_LEASE(fl))
return;
lock_kernel();
fl->fl_type = F_UNLCK | F_INPROGRESS;
fl->fl_break_time = jiffies - 10;
time_out_leases(fl->fl_file->f_dentry->d_inode);
unlock_kernel();
}
EXPORT_SYMBOL(remove_lease);
/**
* __break_lease - revoke all outstanding leases on file
* @inode: the inode of the file to return
......
......@@ -702,6 +702,7 @@ 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 void remove_lease(struct file_lock *);
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 void steal_locks(fl_owner_t from);
......
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