[RFC PATCH 0/7] Block and NMMe PCI use of new DMA mapping API

Leon Romanovsky leon at kernel.org
Sun Oct 27 07:21:53 PDT 2024


This is complimentary patchset to the series which adds new DMA mapping API [1].

In this series, Christoph converts existing nvme-pci driver to use new API, which
is wrapped by relevant blk-mq helpers, so future blk drivers can reuse them in
block layer specific structures.

This is posted as RFC as it is under heavy testing now, and presented
here to get feedback from the community and show another advanced use
case of the new API.

Thanks

[1] https://lore.kernel.org/all/cover.1730037276.git.leon@kernel.org

Christoph Hellwig (7):
  block: share more code for bio addition helpers
  block: don't merge different kinds of P2P transfers in a single bio
  blk-mq: add a dma mapping iterator
  blk-mq: add scatterlist-less DMA mapping helpers
  nvme-pci: remove struct nvme_descriptor
  nvme-pci: use a better encoding for small prp pool allocations
  nvme-pci: convert to blk_rq_dma_map

 block/bio.c                | 148 ++++++------
 block/blk-map.c            |  32 ++-
 block/blk-merge.c          | 313 +++++++++++++++++-------
 drivers/nvme/host/pci.c    | 470 +++++++++++++++++++------------------
 include/linux/blk-mq-dma.h |  64 +++++
 include/linux/blk_types.h  |   2 +
 6 files changed, 636 insertions(+), 393 deletions(-)
 create mode 100644 include/linux/blk-mq-dma.h

-- 
2.46.2




More information about the Linux-nvme mailing list