Thread (96 messages) 96 messages, 16 authors, 2025-10-09

Re: [PATCH RFC 22/35] dma-remap: drop nth_page() in dma_common_contiguous_remap()

From: Marek Szyprowski <m.szyprowski@samsung.com>
Date: 2025-08-22 08:15:09
Also in: dri-devel, intel-gfx, io-uring, kvm, linux-arm-kernel, linux-crypto, linux-ide, linux-iommu, linux-kselftest, linux-mips, linux-mm, linux-mmc, linux-riscv, linux-s390, linux-scsi, lkml, virtualization

On 21.08.2025 22:06, David Hildenbrand wrote:
dma_common_contiguous_remap() is used to remap an "allocated contiguous
region". Within a single allocation, there is no need to use nth_page()
anymore.

Neither the buddy, nor hugetlb, nor CMA will hand out problematic page
ranges.

Cc: Marek Szyprowski <m.szyprowski@samsung.com>
Cc: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: David Hildenbrand <redacted>
Acked-by: Marek Szyprowski <m.szyprowski@samsung.com>
quoted hunk ↗ jump to hunk
---
  kernel/dma/remap.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/dma/remap.c b/kernel/dma/remap.c
index 9e2afad1c6152..b7c1c0c92d0c8 100644
--- a/kernel/dma/remap.c
+++ b/kernel/dma/remap.c
@@ -49,7 +49,7 @@ void *dma_common_contiguous_remap(struct page *page, size_t size,
  	if (!pages)
  		return NULL;
  	for (i = 0; i < count; i++)
-		pages[i] = nth_page(page, i);
+		pages[i] = page++;
  	vaddr = vmap(pages, count, VM_DMA_COHERENT, prot);
  	kvfree(pages);
  
Best regards
-- 
Marek Szyprowski, PhD
Samsung R&D Institute Poland
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help