]> www.infradead.org Git - users/hch/block.git/commit
block: devirtualize the integrity processing integrity-devirtualize
authorChristoph Hellwig <hch@lst.de>
Mon, 7 Jun 2021 06:10:36 +0000 (08:10 +0200)
committerChristoph Hellwig <hch@lst.de>
Wed, 9 Jun 2021 13:01:27 +0000 (15:01 +0200)
commit44a35a423b4453c8773fe576dbc9a9009848e996
tree99a40b56ab88fe224853b5793350670ed01d31d9
parent6d4af7273f98c582af7e2f007a543b61821f0c0a
block: devirtualize the integrity processing

Replace the profile with a simple integer indicating the PI
type and a new flag to signal that any integrity/metadata
processing is enabled and remove the various indirect calls.

To make this work t10-pi.c is not always built into the core kernel
when BLK_DEV_INTEGRITY is enabled, but it is down to a few hundred
lines of code and thus not very efficient when built as a separate
module anyway.

Signed-off-by: Christoph Hellwig <hch@lst.de>
17 files changed:
block/Kconfig
block/Makefile
block/bio-integrity.c
block/blk-core.c
block/blk-integrity.c
block/blk-mq.c
block/blk.h
block/t10-pi.c
drivers/md/dm-crypt.c
drivers/nvme/host/Kconfig
drivers/nvme/target/Kconfig
drivers/nvme/target/io-cmd-bdev.c
drivers/scsi/Kconfig
drivers/target/target_core_iblock.c
include/linux/blkdev.h
include/linux/genhd.h
include/linux/t10-pi.h