diff options
author | J. Bruce Fields <bfields@redhat.com> | 2010-11-03 18:09:18 -0400 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2010-11-10 14:31:29 -0500 |
commit | 8896b93f42459b18b145c69d399b62870df48061 (patch) | |
tree | 661b82f867391d16345c75b693f29b24c062d478 | |
parent | 3df057ac9afe83c4af84016df3baf3a0eb1d3d33 (diff) | |
download | kernel_samsung_tuna-8896b93f42459b18b145c69d399b62870df48061.zip kernel_samsung_tuna-8896b93f42459b18b145c69d399b62870df48061.tar.gz kernel_samsung_tuna-8896b93f42459b18b145c69d399b62870df48061.tar.bz2 |
locks: remove dead lease error-handling code
A minor oversight from f7347ce4ee7c65415f84be915c018473e7076f31,
"fasync: re-organize fasync entry insertion to allow it under a
spinlock": this cleanup-on-error was only needed to handle -ENOMEM. Now
that we're preallocating it's unneeded.
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
-rw-r--r-- | fs/locks.c | 12 |
1 files changed, 2 insertions, 10 deletions
@@ -1506,7 +1506,6 @@ static int do_fcntl_add_lease(unsigned int fd, struct file *filp, long arg) { struct file_lock *fl, *ret; struct fasync_struct *new; - struct inode *inode = filp->f_path.dentry->d_inode; int error; fl = lease_alloc(filp, arg); @@ -1520,7 +1519,7 @@ static int do_fcntl_add_lease(unsigned int fd, struct file *filp, long arg) } ret = fl; lock_flocks(); - error = __vfs_setlease(filp, arg, &fl); + error = __vfs_setlease(filp, arg, &ret); if (error) { unlock_flocks(); locks_free_lock(fl); @@ -1538,14 +1537,7 @@ static int do_fcntl_add_lease(unsigned int fd, struct file *filp, long arg) if (!fasync_insert_entry(fd, filp, &ret->fl_fasync, new)) new = NULL; - if (error < 0) { - /* remove lease just inserted by setlease */ - fl->fl_type = F_UNLCK | F_INPROGRESS; - fl->fl_break_time = jiffies - 10; - time_out_leases(inode); - } else { - error = __f_setown(filp, task_pid(current), PIDTYPE_PID, 0); - } + error = __f_setown(filp, task_pid(current), PIDTYPE_PID, 0); unlock_flocks(); out_free_fasync: |