[PATCH v3 0/8] RDMA: Enable operation with DMA debug enabled

Leon Romanovsky
2026-03-16T19:07:11Z

Add a new DMA_ATTR_REQUIRE_COHERENT attribute to the DMA API to mark
mappings that must run on a DMA‑coherent system. Such buffers cannot
use the SWIOTLB path, may overlap with CPU caches, and do not depend on
explicit cache flushing.

Mappings using this attribute are rejected on systems where cache
side‑effects could lead to data corruption, and therefore do not need
the cache‑overlap debugging logic. This series also includes fixes for
DMA_ATTR_CPU_CACHE_CLEAN handling.
Thanks.

Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
---
Changes in v3:
- Enriched commit messages and documentation
- Added ROB tags
- Link to v2: https://patch.msgid.link/20260311-dma-debug-overlap-v2-0-e00bc2ca346d@nvidia.com

Changes in v2:
- Added DMA_ATTR_REQUIRE_COHERENT attribute
- Added HMM patch which needs this attribute as well
- Renamed DMA_ATTR_CPU_CACHE_CLEAN to be DMA_ATTR_DEBUGGING_IGNORE_CACHELINES
- Link to v1: https://patch.msgid.link/20260307-dma-debug-overlap-v1-0-c034c38872af@nvidia.com

---
Leon Romanovsky (8):
dma-debug: Allow multiple invocations of overlapping entries
dma-mapping: handle DMA_ATTR_CPU_CACHE_CLEAN in trace output
dma-mapping: Clarify valid conditions for CPU cache line overlap
dma-mapping: Introduce DMA require coherency attribute
dma-direct: prevent SWIOTLB path when DMA_ATTR_REQUIRE_COHERENT is set
iommu/dma: add support for DMA_ATTR_REQUIRE_COHERENT attribute
RDMA/umem: Tell DMA mapping that UMEM requires coherency
mm/hmm: Indicate that HMM requires DMA coherency

Documentation/core-api/dma-attributes.rst | 38 ++++++++++++++++++++++++-------
drivers/infiniband/core/umem.c | 5 ++--
drivers/iommu/dma-iommu.c | 21 +++++++++++++----
drivers/virtio/virtio_ring.c | 10 ++++----
include/linux/dma-mapping.h | 15 ++++++++----
include/trace/events/dma.h | 4 +++-
kernel/dma/debug.c | 9 ++++----
kernel/dma/direct.h | 7 +++---
kernel/dma/mapping.c | 6 +++++
mm/hmm.c | 4 ++--
10 files changed, 86 insertions(+), 33 deletions(-)
---
base-commit: 11439c4635edd669ae435eec308f4ab8a0804808
change-id: 20260305-dma-debug-overlap-21487c3fa02c

Best regards,
--
Leon Romanovsky <leonro@nvidia.com>