summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorJeff Layton <jlayton@primarydata.com>2014-09-01 23:06:54 +0400
committerJeff Layton <jlayton@primarydata.com>2014-10-07 22:06:13 +0400
commit4d01b7f5e7576858b71cbaa72b541e17a229cb91 (patch)
tree5ea9a839335ca6159ac24f1cf5ddfbe3ff1e7c74 /include/linux
parent03d12ddf845a4eb874ffa558d65a548aee9b715b (diff)
downloadlinux-4d01b7f5e7576858b71cbaa72b541e17a229cb91.tar.xz
locks: give lm_break a return value
Christoph suggests: "Add a return value to lm_break so that the lock manager can tell the core code "you can delete this lease right now". That gets rid of the games with the timeout which require all kinds of race avoidance code in the users." Do that here and have the nfsd lease break routine use it when it detects that there was a race between setting up the lease and it being broken. Signed-off-by: Jeff Layton <jlayton@primarydata.com> Reviewed-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/fs.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h
index f419f718e447..ed4e1897099c 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -872,7 +872,7 @@ struct lock_manager_operations {
void (*lm_put_owner)(struct file_lock *);
void (*lm_notify)(struct file_lock *); /* unblock callback */
int (*lm_grant)(struct file_lock *, int);
- void (*lm_break)(struct file_lock *);
+ bool (*lm_break)(struct file_lock *);
int (*lm_change)(struct file_lock **, int, struct list_head *);
void (*lm_setup)(struct file_lock *, void **);
};