[GIT PULL 02/16 for v7.2] vfs exportfs

From: Christian Brauner

Date: Fri Jun 12 2026 - 11:13:00 EST


Hey Linus,

/* Summary */

This cleans up the exportfs support for block-style layouts that
provide direct block device access: the operations for layout-based
block device access are split out of struct export_operations into a
separate header, ->commit_blocks() no longer takes a struct iattr
argument, and the way support for layout-based block device access is
detected is reworked. nfsd's blocklayout code also stops honoring
loca_time_modify. This is preparation for supporting export of more
than a single device per file system.

Note that the nfsd tree is based on a merge of this branch so these
changes may also reach you through the nfsd pull request.

/* Testing */

gcc (Debian 14.2.0-19) 14.2.0
Debian clang version 19.1.7 (3+b1)

No build failures or warnings were observed.

/* Conflicts */

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

No known conflicts.

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

The following changes since commit 254f49634ee16a731174d2ae34bc50bd5f45e731:

Linux 7.1-rc1 (2026-04-26 14:19:00 -0700)

are available in the Git repository at:

git@xxxxxxxxxxxxxxxxxxx:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-7.2-rc1.exportfs

for you to fetch changes up to 79e33ddc62c03cce6c29f0792454e1d618228acf:

Merge patch series "cleanup block-style layouts exports" (2026-05-11 11:11:55 +0200)

----------------------------------------------------------------
vfs-7.2-rc1.exportfs

Please consider pulling these changes from the signed vfs-7.2-rc1.exportfs tag.

Thanks!
Christian

----------------------------------------------------------------
Christian Brauner (1):
Merge patch series "cleanup block-style layouts exports"

Christoph Hellwig (4):
nfsd/blocklayout: always ignore loca_time_modify
exportfs: split out the ops for layout-based block device access
exportfs: don't pass struct iattr to ->commit_blocks
exportfs,nfsd: rework checking for layout-based block device access support

MAINTAINERS | 2 +-
fs/nfsd/blocklayout.c | 37 ++++++++----------
fs/nfsd/export.c | 3 +-
fs/nfsd/nfs4layouts.c | 29 ++++----------
fs/xfs/xfs_export.c | 4 +-
fs/xfs/xfs_pnfs.c | 44 +++++++++++++++------
fs/xfs/xfs_pnfs.h | 11 +++---
include/linux/exportfs.h | 25 ++++--------
include/linux/exportfs_block.h | 88 ++++++++++++++++++++++++++++++++++++++++++
9 files changed, 162 insertions(+), 81 deletions(-)
create mode 100644 include/linux/exportfs_block.h