mbox series

[GIT,PULL] vfs dio

Message ID 20250118-vfs-dio-3ca805947186@brauner (mailing list archive)
State New
Headers show
Series [GIT,PULL] vfs dio | expand

Pull-request

git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.14-rc1.statx.dio

Message

Christian Brauner Jan. 18, 2025, 1:09 p.m. UTC
Hey Linus,

/* Summary */

File systems that write out of place usually require different alignment
for direct I/O writes than what they can do for reads.

Add a separate dio read align field to statx, as many out of place write
file systems can easily do reads aligned to the device sector size, but
require bigger alignment for writes.

This is usually papered over by falling back to buffered I/O for smaller
writes and doing read-modify-write cycles, but performance for this
sucks, so applications benefit from knowing the actual write alignment.

/* Testing */

gcc version 14.2.0 (Debian 14.2.0-6)
Debian clang version 16.0.6 (27+b1)

No build failures or warnings were observed.

/* Conflicts */

Merge conflicts with mainline
=============================

No known conflicts.

Merge conflicts with other trees
================================

No known conflicts.

The following changes since commit 40384c840ea1944d7c5a392e8975ed088ecf0b37:

  Linux 6.13-rc1 (2024-12-01 14:28:56 -0800)

are available in the Git repository at:

  git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.14-rc1.statx.dio

for you to fetch changes up to cf40ebb2ed9fde24195260637e00e47a6f0e7c15:

  Merge patch series "add STATX_DIO_READ_ALIGN v3" (2025-01-09 16:23:26 +0100)

Please consider pulling these changes from the signed vfs-6.14-rc1.statx.dio tag.

Thanks!
Christian

----------------------------------------------------------------
vfs-6.14-rc1.statx.dio

----------------------------------------------------------------
Christian Brauner (1):
      Merge patch series "add STATX_DIO_READ_ALIGN v3"

Christoph Hellwig (5):
      fs: reformat the statx definition
      fs: add STATX_DIO_READ_ALIGN
      xfs: cleanup xfs_vn_getattr
      xfs: report the correct read/write dio alignment for reflinked inodes
      xfs: report larger dio alignment for COW inodes

 fs/stat.c                 |  1 +
 fs/xfs/xfs_ioctl.c        | 11 +++++-
 fs/xfs/xfs_iops.c         | 62 +++++++++++++++++------------
 include/linux/stat.h      |  1 +
 include/uapi/linux/stat.h | 99 +++++++++++++++++++++++++++++++++++------------
 5 files changed, 125 insertions(+), 49 deletions(-)