Please find the series which moves ext2 direct-io to use modern iomap interface. Here are some more details - 1. Patch-1: Fixes a kernel bug_on problem with ext2 dax code (found during code review and testing). 2. Patch-2: Adds a __generic_file_fsync_nolock implementation as we had discussed. 3. Patch-3 & Patch-4: Moves ext4 nojournal and ext2 to use _nolock method. 4. Patch-5: This is the main patch which moves ext2 direct-io to use iomap. (more details can be found in the patch) 5. Patch-6: Kills IOMAP_DIO_NOSYNC flag as it is not in use by any filesystem. 6. Patch-7: adds IOCB_STRINGS macro for use in trace events for better trace output of iocb flags. 7. Patch-8: Add ext2 trace point for DIO. Testing: ========= This passes ext2 "auto" group testing for fstests. There were no new failures with this patches. Ritesh Harjani (IBM) (8): ext2/dax: Fix ext2_setsize when len is page aligned libfs: Add __generic_file_fsync_nolock implementation ext4: Use __generic_file_fsync_nolock implementation ext2: Use __generic_file_fsync_nolock implementation ext2: Move direct-io to use iomap iomap: Remove IOMAP_DIO_NOSYNC unused dio flag fs.h: Add IOCB_STRINGS for use in trace points ext2: Add direct-io trace points fs/ext2/Makefile | 2 +- fs/ext2/ext2.h | 1 + fs/ext2/file.c | 127 +++++++++++++++++++++++++++++++++++++++++- fs/ext2/inode.c | 57 +++++++++++-------- fs/ext2/trace.c | 5 ++ fs/ext2/trace.h | 61 ++++++++++++++++++++ fs/ext4/fsync.c | 31 +++++------ fs/iomap/direct-io.c | 2 +- fs/libfs.c | 43 ++++++++++++++ include/linux/fs.h | 15 +++++ include/linux/iomap.h | 6 -- 11 files changed, 303 insertions(+), 47 deletions(-) create mode 100644 fs/ext2/trace.c create mode 100644 fs/ext2/trace.h -- 2.39.2