add more bio helper

Christoph Hellwig
2025-04-22T14:26:33Z

Hi all,

this series adds more block layer helpers to remove boilerplate code when
adding memory to a bio or to even do the entire synchronous I/O.

The main aim is to avoid having to convert to a struct page in the caller
when adding kernel direct mapping or vmalloc memory.

Diffstat:
block/bio.c | 57 ++++++++++++++++++++++
block/blk-map.c | 108 ++++++++++++++++--------------------------
drivers/block/pktcdvd.c | 2
drivers/block/rnbd/rnbd-srv.c | 7 --
drivers/block/ublk_drv.c | 3 -
drivers/block/virtio_blk.c | 4 -
drivers/md/bcache/super.c | 3 -
drivers/md/dm-bufio.c | 2
drivers/md/dm-integrity.c | 16 ++----
drivers/nvme/host/core.c | 2
drivers/scsi/scsi_ioctl.c | 2
drivers/scsi/scsi_lib.c | 3 -
fs/btrfs/scrub.c | 10 ---
fs/gfs2/ops_fstype.c | 24 +++------
fs/hfsplus/wrapper.c | 46 +++--------------
fs/xfs/xfs_bio_io.c | 30 ++++-------
fs/xfs/xfs_buf.c | 27 +++-------
fs/zonefs/super.c | 34 ++++---------
include/linux/bio.h | 39 ++++++++++++++-
include/linux/blk-mq.h | 4 -
kernel/power/swap.c | 103 +++++++++++++++++-----------------------
21 files changed, 253 insertions(+), 273 deletions(-)