Jeff Layton 4a075e39c8 locks: add a new struct file_locking_context pointer to struct inode
The current scheme of using the i_flock list is really difficult to
manage. There is also a legitimate desire for a per-inode spinlock to
manage these lists that isn't the i_lock.

Start conversion to a new scheme to eventually replace the old i_flock
list with a new "file_lock_context" object.

We start by adding a new i_flctx to struct inode. For now, it lives in
parallel with i_flock list, but will eventually replace it. The idea is
to allocate a structure to sit in that pointer and act as a locus for
all things file locking.

We allocate a file_lock_context for an inode when the first lock is
added to it, and it's only freed when the inode is freed. We use the
i_lock to protect the assignment, but afterward it should mostly be
accessed locklessly.

Signed-off-by: Jeff Layton <jlayton@primarydata.com>
Acked-by: Christoph Hellwig <hch@lst.de>
2015-01-16 15:05:54 -05:00
..
2014-11-19 13:01:20 -05:00
2014-11-19 13:01:20 -05:00
2014-12-13 12:42:51 -08:00
2014-08-08 15:57:24 -07:00
2014-11-19 13:01:20 -05:00
2014-11-19 13:01:20 -05:00
2014-12-14 16:10:09 -08:00
2015-01-06 10:45:35 +01:00
2014-12-18 19:08:10 -08:00
2014-08-07 14:40:09 -04:00
2014-11-28 18:23:44 -08:00
2014-11-19 13:01:20 -05:00
2014-12-14 16:10:09 -08:00
2014-12-21 22:42:37 +01:00
2014-12-12 09:48:17 -08:00
2014-08-07 14:40:09 -04:00
2014-11-19 13:01:20 -05:00
2014-12-08 20:39:29 -05:00
2014-10-24 00:14:38 +02:00
2014-12-10 21:31:59 -05:00
2014-12-18 11:22:02 -08:00
2014-08-26 09:35:56 +02:00
2014-11-10 10:06:18 +01:00
2014-11-19 13:01:25 -05:00
2014-11-19 13:01:26 -05:00