]> www.infradead.org Git - users/hch/misc.git/commit
iomap: split bios to zone append limits in the submission handlers
authorChristoph Hellwig <hch@lst.de>
Mon, 27 Jan 2025 14:33:47 +0000 (15:33 +0100)
committerChristoph Hellwig <hch@lst.de>
Mon, 3 Feb 2025 09:18:38 +0000 (10:18 +0100)
commit1361a2d5010a9a1f96f44925077e0c4589c5d0f3
tree7a4d48e6255a953e4e88a6a40d47b3a768c38ff3
parente3ecad5bf9ce923fc84dcda5072c30b2990e531e
iomap: split bios to zone append limits in the submission handlers

Provide helpers for file systems to split bios in the direct I/O and
writeback I/O submission handlers.  The split ioends are chained to
the parent ioend so that only the parent ioend originally generated
by the iomap layer will be processed after all the chained off children
have completed.  This is based on the block layer bio chaining that has
supported a similar mechanism for a long time.

This Follows btrfs' lead and don't try to build bios to hardware limits
for zone append commands, but instead build them as normal unconstrained
bios and split them to the hardware limits in the I/O submission handler.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: "Darrick J. Wong" <djwong@kernel.org>
fs/iomap/Makefile
fs/iomap/buffered-io.c
fs/iomap/ioend.c [new file with mode: 0644]
include/linux/iomap.h