aboutsummaryrefslogtreecommitdiffstats
path: root/fs/locks.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/locks.c')
-rw-r--r--fs/locks.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/fs/locks.c b/fs/locks.c
index 08415b2a6d3..0f3998291f7 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -444,15 +444,9 @@ static void lease_release_private_callback(struct file_lock *fl)
444 fl->fl_file->f_owner.signum = 0; 444 fl->fl_file->f_owner.signum = 0;
445} 445}
446 446
447static int lease_mylease_callback(struct file_lock *fl, struct file_lock *try)
448{
449 return fl->fl_file == try->fl_file;
450}
451
452static const struct lock_manager_operations lease_manager_ops = { 447static const struct lock_manager_operations lease_manager_ops = {
453 .fl_break = lease_break_callback, 448 .fl_break = lease_break_callback,
454 .fl_release_private = lease_release_private_callback, 449 .fl_release_private = lease_release_private_callback,
455 .fl_mylease = lease_mylease_callback,
456 .fl_change = lease_modify, 450 .fl_change = lease_modify,
457}; 451};
458 452
@@ -1405,7 +1399,7 @@ int generic_setlease(struct file *filp, long arg, struct file_lock **flp)
1405 for (before = &inode->i_flock; 1399 for (before = &inode->i_flock;
1406 ((fl = *before) != NULL) && IS_LEASE(fl); 1400 ((fl = *before) != NULL) && IS_LEASE(fl);
1407 before = &fl->fl_next) { 1401 before = &fl->fl_next) {
1408 if (lease->fl_lmops->fl_mylease(fl, lease)) 1402 if (fl->fl_file == filp)
1409 my_before = before; 1403 my_before = before;
1410 else if (fl->fl_type == (F_INPROGRESS | F_UNLCK)) 1404 else if (fl->fl_type == (F_INPROGRESS | F_UNLCK))
1411 /* 1405 /*