This series adds the base feature support to enable atomic writes in direct-io path for ext4. We advertise the minimum and the maximum atomic write unit sizes via statx on a regular file. This series allows users to utilize atomic write support using - 1. on bs < ps systems via - mkfs.ext4 -F -b 16384 /dev/sda 2. on bs = ps systems via bigalloc - mkfs.ext4 -O bigalloc -F -b 4096 -C 65536 /dev/sda This can then be utilized using - xfs_io -fdc "pwrite -V 1 -A -b16k 0 16k" /mnt/f1 This is built on top of John's DIO atomic write series for XFS [1]. The VFS and block layer enablement for atomic writes were merged already. [1]: https://lore.kernel.org/linux-xfs/20241019125113.369994-1-john.g.garry@xxxxxxxxxx/ RFC -> PATCH: - Dropped RFC tag - Last RFC was posted a while ago but back then a lot of VFS and block layer interfaces were still not merged. Those are now merged, thanks to John and everyone else. - [RFC] - https://lore.kernel.org/linux-ext4/cover.1709356594.git.ritesh.list@xxxxxxxxx/ Ritesh Harjani (IBM) (6): ext4: Add statx support for atomic writes ext4: Check for atomic writes support in write iter ext4: Support setting FMODE_CAN_ATOMIC_WRITE ext4: Warn if we ever fallback to buffered-io for DIO atomic writes iomap: Lift blocksize restriction on atomic writes ext4: Add atomic write support for bigalloc fs/ext4/ext4.h | 14 +++++++++++++- fs/ext4/file.c | 27 ++++++++++++++++++++++++++- fs/ext4/inode.c | 27 +++++++++++++++++++++++++++ fs/ext4/super.c | 37 +++++++++++++++++++++++++++++++++++++ fs/iomap/direct-io.c | 2 +- 5 files changed, 104 insertions(+), 3 deletions(-) -- 2.46.0