Hi Jens and Martin, this series has more cleanups to the block layer integrity code. It splits the bio integrity APIs into their own header as they are only used by very few source files, cleans up their stubs a little bit, and then in the last patch change when the bio_integrity_payload is freed when it is not owned by the block layer. This avoids having to know the submitter in the core code and will simplify adding other consuer of the API like file systems or the io_uring non-passthrough PI support. This series is based on the block for-next branch as there are conflicting changes in 6.10-rc but not in the for-6.11/block branch. Changes since v2: - stop calling bio_uninit in bio_endio - fix a commit message typo Changes since v1: - rebased to for-next Diffstat: block/bio-integrity.c | 87 ++++++++--------------- block/bio.c | 16 +++- block/blk-map.c | 3 block/blk.h | 14 +++ block/bounce.c | 2 drivers/md/dm.c | 1 drivers/nvme/host/ioctl.c | 16 +--- drivers/scsi/sd.c | 3 include/linux/bio-integrity.h | 152 ++++++++++++++++++++++++++++++++++++++++ include/linux/bio.h | 156 ------------------------------------------ include/linux/blk-integrity.h | 1 11 files changed, 222 insertions(+), 229 deletions(-)