[PATCHv4 0/8] blk-mq: introduce blk_map_iter
Keith Busch
kbusch at meta.com
Thu Jul 31 08:05:05 PDT 2025
From: Keith Busch <kbusch at kernel.org>
Previous version:
https://lore.kernel.org/linux-nvme/20250729143442.2586575-1-kbusch@meta.com/
Changes since v3:
- Fixed special vec handling
- Fixed address check for dma_mapping_error
- Fixed nvme leaks on dma iteration errror
- Added an nvme prep patch to reduce code duplication when unmaping
sgl's
- On the last patch, I retained the previous MPTR setup for when a
single integrity segment exists for non-user requests. A code comment
in the data path claims that is more efficient than the DMA iterator.
Keith Busch (8):
blk-mq-dma: introduce blk_map_iter
blk-mq-dma: provide the bio_vec list being iterated
blk-mq-dma: require unmap caller provide p2p map type
blk-mq: remove REQ_P2PDMA flag
blk-mq-dma: move common dma start code to a helper
blk-mq-dma: add support for mapping integrity metadata
nvme-pci: create common sgl unmapping helper
nvme-pci: convert metadata mapping to dma iter
block/bio.c | 2 +-
block/blk-mq-dma.c | 237 ++++++++++++++++++++--------------
drivers/nvme/host/pci.c | 190 +++++++++++++++------------
include/linux/blk-integrity.h | 17 +++
include/linux/blk-mq-dma.h | 16 ++-
include/linux/blk_types.h | 1 -
6 files changed, 279 insertions(+), 184 deletions(-)
--
2.47.3
More information about the Linux-nvme
mailing list