Re: [PATCH 2/2] iomap: submit read bio after each extent

Namjae Jeon <[email protected]> Wed, 24 Jun 2026 08:58:06 +0900
Newsgroups dev.linux.lists.ntfs3,dev.linux.lists.fuse-devel,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-xfs,org.ozlabs.lists.linux-erofs
Message-ID <CAKYAXd_8W=S8WmK5J7dnm-j0QycJHAdPOdeuSg6EbwSYgHg0WQ@mail.gmail.com>
On Tue, Jun 23, 2026 at 10:52 PM Christoph Hellwig <[email protected]> wrote:
>
> Currently the iomap buffered read path tries to build up read context
> (i.e. bios for the typical block based case) over multiple iomaps as
> long as the sector matches.  This does not take into account files
> that can map to multiple different devices.  While this could be fixed
> by a bdev check in iomap_bio_read_folio_range, the building up of I/O
> over iomaps actually was a problem for the not yet merged ext2 iomap
> port, as that does want to send out I/O at the end of an indirect
> block mapped range.
>
> So instead of adding more checks move over to a model where a bio only
> spans a single iomap.  Change ->submit_read to be called after each
> iteration, and pass a force argument to indicate that the bio must
> be submitted set on the last iteration.  Switch the bio based users
> to always submit, while keeping the single submit for fuse.
>
> Fixes: dfeab2e95a75 ("erofs: add multiple device support")
> Reported-by: Kelu Ye <[email protected]>
> Reported-by: Yifan Zhao <[email protected]>
> Signed-off-by: Christoph Hellwig <[email protected]>
for ntfs, exfat part.
Acked-by: Namjae Jeon <[email protected]>
Thanks!