|
@@ -187,8 +187,8 @@ void locks_release_private(struct file_lock *fl)
|
|
fl->fl_ops = NULL;
|
|
fl->fl_ops = NULL;
|
|
}
|
|
}
|
|
if (fl->fl_lmops) {
|
|
if (fl->fl_lmops) {
|
|
- if (fl->fl_lmops->fl_release_private)
|
|
|
|
- fl->fl_lmops->fl_release_private(fl);
|
|
|
|
|
|
+ if (fl->fl_lmops->lm_release_private)
|
|
|
|
+ fl->fl_lmops->lm_release_private(fl);
|
|
fl->fl_lmops = NULL;
|
|
fl->fl_lmops = NULL;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -423,9 +423,9 @@ static void lease_release_private_callback(struct file_lock *fl)
|
|
}
|
|
}
|
|
|
|
|
|
static const struct lock_manager_operations lease_manager_ops = {
|
|
static const struct lock_manager_operations lease_manager_ops = {
|
|
- .fl_break = lease_break_callback,
|
|
|
|
- .fl_release_private = lease_release_private_callback,
|
|
|
|
- .fl_change = lease_modify,
|
|
|
|
|
|
+ .lm_break = lease_break_callback,
|
|
|
|
+ .lm_release_private = lease_release_private_callback,
|
|
|
|
+ .lm_change = lease_modify,
|
|
};
|
|
};
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -478,9 +478,9 @@ static inline int locks_overlap(struct file_lock *fl1, struct file_lock *fl2)
|
|
*/
|
|
*/
|
|
static int posix_same_owner(struct file_lock *fl1, struct file_lock *fl2)
|
|
static int posix_same_owner(struct file_lock *fl1, struct file_lock *fl2)
|
|
{
|
|
{
|
|
- if (fl1->fl_lmops && fl1->fl_lmops->fl_compare_owner)
|
|
|
|
|
|
+ if (fl1->fl_lmops && fl1->fl_lmops->lm_compare_owner)
|
|
return fl2->fl_lmops == fl1->fl_lmops &&
|
|
return fl2->fl_lmops == fl1->fl_lmops &&
|
|
- fl1->fl_lmops->fl_compare_owner(fl1, fl2);
|
|
|
|
|
|
+ fl1->fl_lmops->lm_compare_owner(fl1, fl2);
|
|
return fl1->fl_owner == fl2->fl_owner;
|
|
return fl1->fl_owner == fl2->fl_owner;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -530,8 +530,8 @@ static void locks_wake_up_blocks(struct file_lock *blocker)
|
|
waiter = list_first_entry(&blocker->fl_block,
|
|
waiter = list_first_entry(&blocker->fl_block,
|
|
struct file_lock, fl_block);
|
|
struct file_lock, fl_block);
|
|
__locks_delete_block(waiter);
|
|
__locks_delete_block(waiter);
|
|
- if (waiter->fl_lmops && waiter->fl_lmops->fl_notify)
|
|
|
|
- waiter->fl_lmops->fl_notify(waiter);
|
|
|
|
|
|
+ if (waiter->fl_lmops && waiter->fl_lmops->lm_notify)
|
|
|
|
+ waiter->fl_lmops->lm_notify(waiter);
|
|
else
|
|
else
|
|
wake_up(&waiter->fl_wait);
|
|
wake_up(&waiter->fl_wait);
|
|
}
|
|
}
|
|
@@ -1218,7 +1218,7 @@ int __break_lease(struct inode *inode, unsigned int mode)
|
|
fl->fl_type = future;
|
|
fl->fl_type = future;
|
|
fl->fl_break_time = break_time;
|
|
fl->fl_break_time = break_time;
|
|
/* lease must have lmops break callback */
|
|
/* lease must have lmops break callback */
|
|
- fl->fl_lmops->fl_break(fl);
|
|
|
|
|
|
+ fl->fl_lmops->lm_break(fl);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1328,7 +1328,7 @@ int fcntl_getlease(struct file *filp)
|
|
* @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
|
|
*
|
|
*
|
|
- * The (input) flp->fl_lmops->fl_break function is required
|
|
|
|
|
|
+ * The (input) flp->fl_lmops->lm_break function is required
|
|
* by break_lease().
|
|
* by break_lease().
|
|
*
|
|
*
|
|
* Called with file_lock_lock held.
|
|
* Called with file_lock_lock held.
|
|
@@ -1354,7 +1354,7 @@ int generic_setlease(struct file *filp, long arg, struct file_lock **flp)
|
|
|
|
|
|
time_out_leases(inode);
|
|
time_out_leases(inode);
|
|
|
|
|
|
- BUG_ON(!(*flp)->fl_lmops->fl_break);
|
|
|
|
|
|
+ BUG_ON(!(*flp)->fl_lmops->lm_break);
|
|
|
|
|
|
if (arg != F_UNLCK) {
|
|
if (arg != F_UNLCK) {
|
|
error = -EAGAIN;
|
|
error = -EAGAIN;
|
|
@@ -1396,7 +1396,7 @@ int generic_setlease(struct file *filp, long arg, struct file_lock **flp)
|
|
goto out;
|
|
goto out;
|
|
|
|
|
|
if (my_before != NULL) {
|
|
if (my_before != NULL) {
|
|
- error = lease->fl_lmops->fl_change(my_before, arg);
|
|
|
|
|
|
+ error = lease->fl_lmops->lm_change(my_before, arg);
|
|
if (!error)
|
|
if (!error)
|
|
*flp = *my_before;
|
|
*flp = *my_before;
|
|
goto out;
|
|
goto out;
|
|
@@ -1432,7 +1432,7 @@ static int __vfs_setlease(struct file *filp, long arg, struct file_lock **lease)
|
|
* @lease: file_lock to use
|
|
* @lease: file_lock to use
|
|
*
|
|
*
|
|
* Call this to establish a lease on the file.
|
|
* Call this to establish a lease on the file.
|
|
- * The (*lease)->fl_lmops->fl_break operation must be set; if not,
|
|
|
|
|
|
+ * The (*lease)->fl_lmops->lm_break operation must be set; if not,
|
|
* break_lease will oops!
|
|
* break_lease will oops!
|
|
*
|
|
*
|
|
* This will call the filesystem's setlease file method, if
|
|
* This will call the filesystem's setlease file method, if
|
|
@@ -1730,10 +1730,10 @@ out:
|
|
* To avoid blocking kernel daemons, such as lockd, that need to acquire POSIX
|
|
* To avoid blocking kernel daemons, such as lockd, that need to acquire POSIX
|
|
* locks, the ->lock() interface may return asynchronously, before the lock has
|
|
* locks, the ->lock() interface may return asynchronously, before the lock has
|
|
* been granted or denied by the underlying filesystem, if (and only if)
|
|
* been granted or denied by the underlying filesystem, if (and only if)
|
|
- * fl_grant is set. Callers expecting ->lock() to return asynchronously
|
|
|
|
|
|
+ * lm_grant is set. Callers expecting ->lock() to return asynchronously
|
|
* will only use F_SETLK, not F_SETLKW; they will set FL_SLEEP if (and only if)
|
|
* will only use F_SETLK, not F_SETLKW; they will set FL_SLEEP if (and only if)
|
|
* the request is for a blocking lock. When ->lock() does return asynchronously,
|
|
* the request is for a blocking lock. When ->lock() does return asynchronously,
|
|
- * it must return FILE_LOCK_DEFERRED, and call ->fl_grant() when the lock
|
|
|
|
|
|
+ * it must return FILE_LOCK_DEFERRED, and call ->lm_grant() when the lock
|
|
* request completes.
|
|
* request completes.
|
|
* If the request is for non-blocking lock the file system should return
|
|
* If the request is for non-blocking lock the file system should return
|
|
* FILE_LOCK_DEFERRED then try to get the lock and call the callback routine
|
|
* FILE_LOCK_DEFERRED then try to get the lock and call the callback routine
|
|
@@ -1743,7 +1743,7 @@ out:
|
|
* grants a lock so the VFS can find out which locks are locally held and do
|
|
* grants a lock so the VFS can find out which locks are locally held and do
|
|
* the correct lock cleanup when required.
|
|
* the correct lock cleanup when required.
|
|
* The underlying filesystem must not drop the kernel lock or call
|
|
* The underlying filesystem must not drop the kernel lock or call
|
|
- * ->fl_grant() before returning to the caller with a FILE_LOCK_DEFERRED
|
|
|
|
|
|
+ * ->lm_grant() before returning to the caller with a FILE_LOCK_DEFERRED
|
|
* return code.
|
|
* return code.
|
|
*/
|
|
*/
|
|
int vfs_lock_file(struct file *filp, unsigned int cmd, struct file_lock *fl, struct file_lock *conf)
|
|
int vfs_lock_file(struct file *filp, unsigned int cmd, struct file_lock *fl, struct file_lock *conf)
|