Hey Linus,
/* Summary */
This contains the iomap changes for this cycle.
Erofs page cache sharing preliminaries:
Plumb a void *private parameter through iomap_read_folio() and
iomap_readahead() into iomap_iter->private, matching iomap DIO. Erofs
uses this to replace a bogus kmap_to_page() call, as preparatory work
for page cache sharing.
Fix for invalid folio access:
Fix an invalid folio access when a folio without iomap_folio_state is
fully submitted to the IO helper — the helper may call
folio_end_read() at any time, so ctx->cur_folio must be invalidated
after full submission.
/* 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
================================
Conflict with the ntfs3 tree. commit 099ef9ab9203d ("fs/ntfs3: implement
iomap-based file operations") calls iomap_read_folio() and iomap_readahead()
with two arguments, but commit 8806f279244bf ("iomap: stash iomap read ctx
in the private field of iomap_iter") added a third parameter.
diff --git a/fs/ntfs3/inode.c b/fs/ntfs3/inode.c
--- a/fs/ntfs3/inode.c
+++ b/fs/ntfs3/inode.c
@@ -678,7 +678,7 @@
- iomap_read_folio(&ntfs_iomap_ops, &ctx);
+ iomap_read_folio(&ntfs_iomap_ops, &ctx, NULL);
@@ -702,7 +702,7 @@
- iomap_readahead(&ntfs_iomap_ops, &ctx);
+ iomap_readahead(&ntfs_iomap_ops, &ctx, NULL);
[1]: https://lore.kernel.org/linux-next/aW5AGPFq0HPi440m@sirena.org.uk/
[2]: https://lore.kernel.org/linux-next/202601201453.3N9V4NVP-lkp@intel.com/
[3]: https://lore.kernel.org/linux-next/202601201642.SjxE1oMu-lkp@intel.com/
[4]: https://lore.kernel.org/linux-next/aXdnKldyCVLxrk78@sirena.org.uk/
The following changes since commit 8f0b4cce4481fb22653697cced8d0d04027cb1e8:
Linux 6.19-rc1 (2025-12-14 16:05:07 +1200)
are available in the Git repository at:
git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-7.0-rc1.iomap
for you to fetch changes up to aa35dd5cbc060bc3e28ad22b1d76eefa3f024030:
iomap: fix invalid folio access after folio_end_read() (2026-01-29 13:42:05 +0100)
----------------------------------------------------------------
vfs-7.0-rc1.iomap
Please consider pulling these changes from the signed vfs-7.0-rc1.iomap tag.
Thanks!
Christian
----------------------------------------------------------------
Christian Brauner (1):
Merge patch series "iomap: erofs page cache sharing preliminaries"
Hongbo Li (2):
iomap: stash iomap read ctx in the private field of iomap_iter
erofs: hold read context in iomap_iter if needed
Joanne Koong (1):
iomap: fix invalid folio access after folio_end_read()
fs/erofs/data.c | 67 ++++++++++++++++++++++++++++++++++----------------
fs/fuse/file.c | 4 +--
fs/iomap/buffered-io.c | 57 ++++++++++++++++++++++--------------------
include/linux/iomap.h | 8 +++---
4 files changed, 83 insertions(+), 53 deletions(-)