summaryrefslogtreecommitdiff
path: root/include/linux/execmem.h
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2026-01-26 08:53:37 +0300
committerJens Axboe <axboe@kernel.dk>2026-01-28 15:16:39 +0300
commit8dd5e7c75d7bb2635c7efd219ff20693fc24096a (patch)
tree0c8b9fd0ad9984504f313497923d5e0a90627a01 /include/linux/execmem.h
parent301f5356521ed90f72a67797156d75093aac786f (diff)
downloadlinux-8dd5e7c75d7bb2635c7efd219ff20693fc24096a.tar.xz
block: add helpers to bounce buffer an iov_iter into bios
Add helpers to implement bounce buffering of data into a bio to implement direct I/O for cases where direct user access is not possible because stable in-flight data is required. These are intended to be used as easily as bio_iov_iter_get_pages for the zero-copy path. The write side is trivial and just copies data into the bounce buffer. The read side is a lot more complex because it needs to perform the copy from the completion context, and without preserving the iov_iter through the call chain. It steals a trick from the integrity data user interface and uses the first vector in the bio for the bounce buffer data that is fed to the block I/O stack, and uses the others to record the user buffer fragments. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Anuj Gupta <anuj20.g@samsung.com> Reviewed-by: Damien Le Moal <dlemoal@kernel.org> Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Tested-by: Anuj Gupta <anuj20.g@samsung.com> Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include/linux/execmem.h')
0 files changed, 0 insertions, 0 deletions