On Thu, 4 Jun 2026 14:09:52 +0530 "Aneesh Kumar K.V (Arm)" <[email protected]> wrote:
> ret in dma_direct_alloc() and dma_direct_alloc_pages() holds the returned > CPU mapping, not a generic return value. Rename it to cpu_addr and update > the remaining uses to match. > > This makes the allocation paths easier to follow and keeps the local naming > consistent with what the variable actually represents. > > Tested-by: Michael Kelley <[email protected]> > Tested-by: Mostafa Saleh <[email protected]> > Signed-off-by: Aneesh Kumar K.V (Arm) <[email protected]> I wondered if cpu_addr is descriptive enough (a CPU address could theoretically be virtual or physical), but I can see that a few other places already use cpu_addr to hold virtual addresses, so yeah, let's keep this name. Reviewed-by: Petr Tesarik <[email protected]> Petr T > --- > kernel/dma/direct.c | 31 +++++++++++++++---------------- > 1 file changed, 15 insertions(+), 16 deletions(-) > > diff --git a/kernel/dma/direct.c b/kernel/dma/direct.c > index aa3489aa10a0..4e446aa4130e 100644 > --- a/kernel/dma/direct.c > +++ b/kernel/dma/direct.c > @@ -204,7 +204,7 @@ void *dma_direct_alloc(struct device *dev, size_t size, > bool mark_mem_decrypt = false; > bool allow_highmem = true; > struct page *page; > - void *ret; > + void *cpu_addr; > > /* > * DMA_ATTR_CC_SHARED is not a caller-visible dma_alloc_*() > @@ -318,34 +318,33 @@ void *dma_direct_alloc(struct device *dev, size_t size, > arch_dma_prep_coherent(page, size); > > /* create a coherent mapping */ > - ret = dma_common_contiguous_remap(page, size, prot, > - __builtin_return_address(0)); > - if (!ret) > + cpu_addr = dma_common_contiguous_remap(page, size, prot, > + __builtin_return_address(0)); > + if (!cpu_addr) > goto out_encrypt_pages; > } else { > - ret = page_address(page); > + cpu_addr = page_address(page); > } > > - memset(ret, 0, size); > + memset(cpu_addr, 0, size); > > if (set_uncached) { > void *uncached_cpu_addr; > > arch_dma_prep_coherent(page, size); > - uncached_cpu_addr = arch_dma_set_uncached(ret, size); > + uncached_cpu_addr = arch_dma_set_uncached(cpu_addr, size); > if (IS_ERR(uncached_cpu_addr)) > goto out_free_remap_pages; > - ret = uncached_cpu_addr; > + cpu_addr = uncached_cpu_addr; > } > > *dma_handle = phys_to_dma_direct(dev, page_to_phys(page), > !!(attrs & DMA_ATTR_CC_SHARED)); > - return ret; > - > + return cpu_addr; > > out_free_remap_pages: > if (remap) > - dma_common_free_remap(ret, size); > + dma_common_free_remap(cpu_addr, size); > > out_encrypt_pages: > if (mark_mem_decrypt && > @@ -439,7 +438,7 @@ struct page *dma_direct_alloc_pages(struct device *dev, > size_t size, > { > unsigned long attrs = 0; > struct page *page; > - void *ret; > + void *cpu_addr; > > if (force_dma_unencrypted(dev)) > attrs |= DMA_ATTR_CC_SHARED; > @@ -453,7 +452,7 @@ struct page *dma_direct_alloc_pages(struct device *dev, > size_t size, > if (!page) > return NULL; > > - ret = page_address(page); > + cpu_addr = page_address(page); > goto setup_page; > } > > @@ -461,11 +460,11 @@ struct page *dma_direct_alloc_pages(struct device *dev, > size_t size, > if (!page) > return NULL; > > - ret = page_address(page); > - if ((attrs & DMA_ATTR_CC_SHARED) && dma_set_decrypted(dev, ret, size)) > + cpu_addr = page_address(page); > + if ((attrs & DMA_ATTR_CC_SHARED) && dma_set_decrypted(dev, cpu_addr, > size)) > goto out_leak_pages; > setup_page: > - memset(ret, 0, size); > + memset(cpu_addr, 0, size); > *dma_handle = phys_to_dma_direct(dev, page_to_phys(page), > !!(attrs & DMA_ATTR_CC_SHARED)); > return page;
