]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
dma-mapping: Support batch mode for dma_direct_{map,unmap}_sg
authorBarry Song <baohua@kernel.org>
Sat, 28 Feb 2026 22:13:37 +0000 (06:13 +0800)
committerMarek Szyprowski <m.szyprowski@samsung.com>
Fri, 13 Mar 2026 22:47:48 +0000 (23:47 +0100)
commit661f8a193d48d123aedcbd401ace137333d02523
tree470c7aad83c0b07f5164cf909c503ec6f908c6b9
parentd7eafe655b741dfc241d5b920f6d2cea45b568d9
dma-mapping: Support batch mode for dma_direct_{map,unmap}_sg

Extending these APIs with a flush argument:
dma_direct_unmap_phys(), dma_direct_map_phys(), and
dma_direct_sync_single_for_cpu(). For single-buffer cases, flush=true
would be used, while for SG cases flush=false would be used, followed
by a single flush after all cache operations are issued in
dma_direct_{map,unmap}_sg().

This ultimately benefits dma_map_sg() and dma_unmap_sg().

Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Cc: Marek Szyprowski <m.szyprowski@samsung.com>
Cc: Robin Murphy <robin.murphy@arm.com>
Cc: Ada Couprie Diaz <ada.coupriediaz@arm.com>
Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Anshuman Khandual <anshuman.khandual@arm.com>
Cc: Ryan Roberts <ryan.roberts@arm.com>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Tangquan Zheng <zhengtangquan@oppo.com>
Reviewed-by: Leon Romanovsky <leon@kernel.org>
Tested-by: Xueyuan Chen <xueyuan.chen21@gmail.com>
Signed-off-by: Barry Song <baohua@kernel.org>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Link: https://lore.kernel.org/r/20260228221337.59951-1-21cnbao@gmail.com
kernel/dma/direct.c
kernel/dma/direct.h
kernel/dma/mapping.c