[PATCH v8 0/9] DAX fsync/msync support

From: Ross Zwisler
Date: Fri Jan 08 2016 - 00:28:16 EST


Changes since v7 [1]:

1) Update patch 1 so that we initialize bh->b_bdev before passing it to
get_block() instead of working around the fact that it could still be NULL
after get_block() completes. (Dan)

2) Add a check to dax_radix_entry() so that we WARN_ON_ONCE() and exit
gracefully if we find a page cache entry still in the radix tree when
trying to insert a DAX entry.

This series replaces v7 in the MM tree and in the "akpm" branch of the next
tree. A working tree can be found here:

https://git.kernel.org/cgit/linux/kernel/git/zwisler/linux.git/log/?h=fsync_v8

[1]: https://lists.01.org/pipermail/linux-nvdimm/2016-January/003886.html

Ross Zwisler (9):
dax: fix NULL pointer dereference in __dax_dbg()
dax: fix conversion of holes to PMDs
pmem: add wb_cache_pmem() to the PMEM API
dax: support dirty DAX entries in radix tree
mm: add find_get_entries_tag()
dax: add support for fsync/msync
ext2: call dax_pfn_mkwrite() for DAX fsync/msync
ext4: call dax_pfn_mkwrite() for DAX fsync/msync
xfs: call dax_pfn_mkwrite() for DAX fsync/msync

arch/x86/include/asm/pmem.h | 11 +--
fs/block_dev.c | 2 +-
fs/dax.c | 215 ++++++++++++++++++++++++++++++++++++++++----
fs/ext2/file.c | 4 +-
fs/ext4/file.c | 4 +-
fs/inode.c | 2 +-
fs/xfs/xfs_file.c | 7 +-
include/linux/dax.h | 7 ++
include/linux/fs.h | 3 +-
include/linux/pagemap.h | 3 +
include/linux/pmem.h | 22 ++++-
include/linux/radix-tree.h | 9 ++
mm/filemap.c | 91 +++++++++++++++++--
mm/truncate.c | 69 +++++++-------
mm/vmscan.c | 9 +-
mm/workingset.c | 4 +-
16 files changed, 393 insertions(+), 69 deletions(-)

--
2.5.0