twx-linux/Documentation/core-api
Leon Romanovsky e9e81d86fe dma-debug: refactor to use physical addresses for page mapping
Convert the DMA debug infrastructure from page-based to physical address-based
mapping as a preparation to rely on physical address for DMA mapping routines.

The refactoring renames debug_dma_map_page() to debug_dma_map_phys() and
changes its signature to accept a phys_addr_t parameter instead of struct page
and offset. Similarly, debug_dma_unmap_page() becomes debug_dma_unmap_phys().
A new dma_debug_phy type is introduced to distinguish physical address mappings
from other debug entry types. All callers throughout the codebase are updated
to pass physical addresses directly, eliminating the need for page-to-physical
conversion in the debug layer.

This refactoring eliminates the need to convert between page pointers and
physical addresses in the debug layer, making the code more efficient and
consistent with the DMA mapping API's physical address focus.

Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
[mszyprow: added a fixup]
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Link: https://lore.kernel.org/r/56d1a6769b68dfcbf8b26a75a7329aeb8e3c3b6a.1757423202.git.leonro@nvidia.com
Link: https://lore.kernel.org/all/20250910052618.GH341237@unreal/
2025-09-12 00:09:51 +02:00
..
irq irqdomain: Fix kernel-doc and add it to Documentation 2025-05-16 21:06:13 +02:00
kho Documentation: KHO: add memblock bindings 2025-05-12 23:50:43 -07:00
wrappers
asm-annotations.rst docs: move x86 documentation into Documentation/arch/ 2023-03-30 12:58:51 -06:00
assoc_array.rst
boot-time-mm.rst
cachetlb.rst mm: remove ARCH_IMPLEMENTS_FLUSH_DCACHE_FOLIO 2023-08-24 16:20:19 -07:00
cgroup.rst doc/cgroup: Fix title underline length 2025-01-15 09:46:18 +01:00
circular-buffers.rst
cleanup.rst cleanup: Add usage and style documentation 2024-08-05 16:54:41 +02:00
cpu_hotplug.rst Documentation: core-api/cpuhotplug: Fix missing prefix 2024-10-07 11:50:54 -06:00
debug-objects.rst
debugging-via-ohci1394.rst Documentation: Drop or replace remaining mentions of IA64 2023-09-11 08:13:18 +00:00
dma-api-howto.rst docs: dma-api: replace consistent with coherent 2025-07-01 13:25:36 -06:00
dma-api.rst dma-debug: refactor to use physical addresses for page mapping 2025-09-12 00:09:51 +02:00
dma-attributes.rst dma-mapping: introduce new DMA attribute to indicate MMIO memory 2025-09-12 00:08:07 +02:00
dma-isa-lpc.rst
entry.rst Documentation: core-api: entry: Replace deprecated KVM entry/exit functions 2025-07-24 08:32:59 -06:00
errseq.rst
floating-point.rst arch: add ARCH_HAS_KERNEL_FPU_SUPPORT 2024-05-19 14:36:17 -07:00
folio_queue.rst folio_queue: remove unused field marks3 2025-05-21 14:34:38 +02:00
genalloc.rst
generic-radix-tree.rst
genericirq.rst irqdomain: Fix kernel-doc and add it to Documentation 2025-05-16 21:06:13 +02:00
gfp_mask-from-fs-io.rst docs: core-api/gfp_mask-from-fs-io: indicate that vmalloc supports GFP_NOFS/GFP_NOIO 2024-11-22 10:42:37 -07:00
idr.rst
index.rst docs: document linked lists 2025-07-17 16:55:53 -06:00
kernel-api.rst It has been a relatively busy cycle for docs, especially the build system: 2025-07-31 08:36:51 -07:00
kobject.rst
kref.rst kref: Improve documentation 2024-12-13 08:49:31 -07:00
librs.rst
list.rst docs: document linked lists 2025-07-17 16:55:53 -06:00
local_ops.rst timers: Update the documentation to reflect on the new timer_shutdown() API 2022-11-24 15:09:12 +01:00
maple_tree.rst maple_tree: update the documentation of maple tree 2023-12-10 16:51:32 -08:00
memory-allocation.rst docs/core-api: memory-allocation: GFP_NOWAIT doesn't need __GFP_NOWARN 2024-07-29 15:10:25 -06:00
memory-hotplug.rst mm,memory_hotplug: drop status_change_nid parameter from memory_notify 2025-07-13 16:38:17 -07:00
min_heap.rst Documentation/core-api: min_heap: update for variable types change 2025-02-18 13:30:56 -07:00
mm-api.rst Significant patch series in this pull request: 2025-08-05 16:02:07 +03:00
netlink.rst doc/netlink: Update genetlink-legacy documentation 2023-08-27 17:17:09 -07:00
packing.rst docs: packing: Fix a typo in example code. 2025-06-09 12:29:50 -06:00
padata.rst Documentation: core-api: padata: correct spelling 2023-02-16 16:58:01 -07:00
parser.rst Documentation: core-api: add generic parser docbook 2024-12-11 09:07:40 -07:00
pin_user_pages.rst mm: remove page_mkclean() 2024-07-03 19:30:17 -07:00
printk-basics.rst
printk-formats.rst drm for 6.16-rc1 2025-05-28 09:46:39 -07:00
printk-index.rst docs:core-api: fixed typos and grammar in printk-index page 2024-05-07 08:01:11 -06:00
protection-keys.rst Documentation/protection-keys: add AArch64 to documentation 2024-10-14 17:27:48 +01:00
rbtree.rst
refcount-vs-atomic.rst refcount: provide ops for cases when object's memory can be reused 2025-03-16 22:06:19 -07:00
swiotlb.rst docs/core-api: swiotlb: fix typos 2024-10-17 09:37:05 -06:00
symbol-namespaces.rst docs: symbol-namespaces: fix reST warning with literal block 2025-06-06 05:40:25 +09:00
this_cpu_ops.rst docs: Improve discussion of this_cpu_ptr(), add raw_cpu_ptr() 2025-02-04 21:50:06 -08:00
timekeeping.rst
tracepoint.rst
unaligned-memory-access.rst move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
union_find.rst Documentation: Fix the compilation errors in union_find.rst 2024-08-02 08:58:16 -10:00
watch_queue.rst
workqueue.rst workqueue: Add new WQ_PERCPU flag 2025-06-17 08:52:09 -10:00
xarray.rst xarray: add xas_try_split() to split a multi-index entry 2025-03-17 22:06:59 -07:00