]> www.infradead.org Git - users/jedix/linux-maple.git/commit
iomap: split bios to zone append limits in the submission handlers
authorChristoph Hellwig <hch@lst.de>
Thu, 6 Feb 2025 06:40:02 +0000 (07:40 +0100)
committerChristian Brauner <brauner@kernel.org>
Thu, 6 Feb 2025 12:02:14 +0000 (13:02 +0100)
commit5fcbd555d48390a8c819ba7fdf55fbfcabe05c80
tree7d7994ea0cf0890308fb104b28a60058a0b59d75
parent034c29fb3e7c119c42e650986e280f025a1bec7b
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>
Link: https://lore.kernel.org/r/20250206064035.2323428-5-hch@lst.de
Reviewed-by: "Darrick J. Wong" <djwong@kernel.org>
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/iomap/Makefile
fs/iomap/buffered-io.c
fs/iomap/ioend.c [new file with mode: 0644]
include/linux/iomap.h