Hi, This patch series (based on ecb5ec0 in Linus' tree) contains all of the non-BTRFS work that I've done to implement swapfiles on BTRFS. The BTRFS portion is still undergoing development and is now outweighed by the non-BTRFS changes, so I want to get these in separately. Version 2 changes the generic swapfile interface to use ->read_iter and ->write_iter instead of using ->direct_IO directly in response to discussion on the previous submission. It also adds the iov_iter_is_bvec helper to factor out some common checks. Version 1 can be found here: https://lkml.org/lkml/2014/12/15/7 Omar Sandoval (5): iov_iter: add ITER_BVEC helpers direct-io: don't dirty ITER_BVEC pages on read nfs: don't dirty ITER_BVEC pages read through direct I/O swapfile: use ->read_iter and ->write_iter vfs: update swap_{,de}activate documentation Documentation/filesystems/Locking | 7 ++++--- Documentation/filesystems/vfs.txt | 7 ++++--- fs/direct-io.c | 8 ++++--- fs/nfs/direct.c | 5 ++++- fs/splice.c | 7 ++----- include/linux/uio.h | 7 +++++++ mm/iov_iter.c | 12 +++++++++++ mm/page_io.c | 44 +++++++++++++++++++++++++-------------- mm/swapfile.c | 11 +++++++++- 9 files changed, 76 insertions(+), 32 deletions(-) -- 2.2.1 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>