summaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorJeff Layton <jlayton@primarydata.com>2014-08-22 10:55:47 -0400
committerJeff Layton <jlayton@primarydata.com>2014-10-07 14:06:12 -0400
commit1c7dd2ff430fa14b45c9def54468e3a25ab8342b (patch)
treea80695c6ca57be5da96c63b67d1264507bfe509e /Documentation
parente6f5c78930e409f3a6b37f5484313a416359ac7f (diff)
downloadblackbird-op-linux-1c7dd2ff430fa14b45c9def54468e3a25ab8342b.tar.gz
blackbird-op-linux-1c7dd2ff430fa14b45c9def54468e3a25ab8342b.zip
locks: define a lm_setup handler for leases
...and move the fasync setup into it for fcntl lease calls. At the same time, change the semantics of how the file_lock double-pointer is handled. Up until now, on a successful lease return you got a pointer to the lock on the list. This is bad, since that pointer can no longer be relied on as valid once the inode->i_lock has been released. Change the code to instead just zero out the pointer if the lease we passed in ended up being used. Then the callers can just check to see if it's NULL after the call and free it if it isn't. The priv argument has the same semantics. The lm_setup function can zero the pointer out to signal to the caller that it should not be freed after the function returns. Signed-off-by: Jeff Layton <jlayton@primarydata.com> Reviewed-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'Documentation')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud