Hi all, Darrick recently posted iomap support for fuse-iomap, which was trivial but a bit ugly, which triggered me into looking how this could be done in a cleaner way. The result of that is this fairly big series that reworks how the MM code calls into the file system to activate swap files to make it much cleaner and easier to use.
I've tested this with swap devices manually, and using the swap tests in xfstests on btrfs, ext3, ext4, f2fs and xfs to exercise the different implementation. Out of those all passed, but f2fs actually notruns all tests even in the baseline as it requires special preparation for swapfiles which never got wired up in xfstests. Diffstat: Documentation/filesystems/iomap/operations.rst | 3 Documentation/filesystems/locking.rst | 35 +-- Documentation/filesystems/vfs.rst | 40 ++-- block/fops.c | 15 + fs/btrfs/btrfs_inode.h | 3 fs/btrfs/file.c | 4 fs/btrfs/inode.c | 72 ------- fs/ext4/file.c | 6 fs/ext4/inode.c | 11 - fs/f2fs/data.c | 50 ----- fs/f2fs/f2fs.h | 2 fs/f2fs/file.c | 4 fs/iomap/swapfile.c | 165 +++--------------- fs/nfs/direct.c | 1 fs/nfs/file.c | 21 -- fs/nfs/nfs4file.c | 3 fs/ntfs/aops.c | 8 fs/ntfs/file.c | 6 fs/smb/client/cifsfs.c | 18 + fs/smb/client/cifsfs.h | 3 fs/smb/client/file.c | 16 - fs/xfs/xfs_aops.c | 48 ----- fs/xfs/xfs_file.c | 39 ++++ fs/zonefs/file.c | 30 +-- include/linux/fs.h | 11 - include/linux/iomap.h | 5 include/linux/nfs_fs.h | 3 include/linux/swap.h | 129 +------------- mm/page_io.c | 45 ---- mm/swap.h | 92 ++++++++++ mm/swapfile.c | 227 ++++++++++++++----------- 31 files changed, 471 insertions(+), 644 deletions(-) _______________________________________________ Linux-f2fs-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel
