]> git.baikalelectronics.ru Git - kernel.git/commit
dax: coordinate locking for offsets in PMD range
authorRoss Zwisler <ross.zwisler@linux.intel.com>
Tue, 8 Nov 2016 00:32:20 +0000 (11:32 +1100)
committerDave Chinner <david@fromorbit.com>
Tue, 8 Nov 2016 00:32:20 +0000 (11:32 +1100)
commit63e95b5c4f16e156b98adcf2f7d820ba941c82a3
treed8f6bf08bde092b10bf5222dec67fec720e89376
parente3ad61c64abceeb5cc122f0bde3700e6e17ca60a
dax: coordinate locking for offsets in PMD range

DAX radix tree locking currently locks entries based on the unique
combination of the 'mapping' pointer and the pgoff_t 'index' for the entry.
This works for PTEs, but as we move to PMDs we will need to have all the
offsets within the range covered by the PMD to map to the same bit lock.
To accomplish this, for ranges covered by a PMD entry we will instead lock
based on the page offset of the beginning of the PMD entry.  The 'mapping'
pointer is still used in the same way.

Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Dave Chinner <david@fromorbit.com>
fs/dax.c
include/linux/dax.h
mm/filemap.c