mbox series

[0/4] large atomic writes for xfs

Message ID 20241204154344.3034362-1-john.g.garry@oracle.com (mailing list archive)
Headers show
Series large atomic writes for xfs | expand

Message

John Garry Dec. 4, 2024, 3:43 p.m. UTC
Currently the atomic write unit min and max is fixed at the FS blocksize
for xfs and ext4.

This series expands support to allow multiple FS blocks to be written
atomically.

To allow multiple blocks be written atomically, the fs must ensure blocks
are allocated with some alignment and granularity. For xfs, today only
rtvol provides this through rt_extsize. So initial support for large
atomic writes will be for rtvol here. Support can easily be expanded to
regular files through the proposed forcealign feature.

An atomic write which spans mixed unwritten and mapped extents will be
rejected. It is the responsibility of userspace to ensure an atomic write
is within a single extent.

Based on v6.13-rc1.

Patches available at the following:
https://github.com/johnpgarry/linux/tree/atomic-write-large-atomics-v6.13

John Garry (3):
  xfs: Switch atomic write size check in xfs_file_write_iter()
  xfs: Add RT atomic write unit max to xfs_mount
  xfs: Update xfs_get_atomic_write_attr() for large atomic writes

Ritesh Harjani (IBM) (1):
  iomap: Lift blocksize restriction on atomic writes

 fs/iomap/direct-io.c   |  2 +-
 fs/xfs/libxfs/xfs_sb.c |  3 +++
 fs/xfs/xfs_file.c      | 12 +++++-------
 fs/xfs/xfs_iops.c      | 21 +++++++++++++++++++--
 fs/xfs/xfs_iops.h      |  2 ++
 fs/xfs/xfs_mount.h     |  1 +
 fs/xfs/xfs_rtalloc.c   | 25 +++++++++++++++++++++++++
 fs/xfs/xfs_rtalloc.h   |  4 ++++
 8 files changed, 60 insertions(+), 10 deletions(-)