lkml.org 
[lkml]   [2019]   [Jun]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] iommu/dma: Apply dma_{alloc,free}_contiguous functions
From
Date
On 06/06/2019 07:28, Christoph Hellwig wrote:
> Looks fine to me. Robin, any comments?

AFAICS this looks like the obvious conversion, so... no? :)

> On Mon, Jun 03, 2019 at 03:52:59PM -0700, Nicolin Chen wrote:
>> This patch replaces dma_{alloc,release}_from_contiguous() with
>> dma_{alloc,free}_contiguous() to simplify those function calls.

Acked-by: Robin Murphy <robin.murphy@arm.com>

>> Signed-off-by: Nicolin Chen <nicoleotsuka@gmail.com>
>> ---
>> drivers/iommu/dma-iommu.c | 14 ++++----------
>> 1 file changed, 4 insertions(+), 10 deletions(-)
>>
>> diff --git a/drivers/iommu/dma-iommu.c b/drivers/iommu/dma-iommu.c
>> index 0cd49c2d3770..cc3d39dbbe1a 100644
>> --- a/drivers/iommu/dma-iommu.c
>> +++ b/drivers/iommu/dma-iommu.c
>> @@ -951,8 +951,8 @@ static void __iommu_dma_free(struct device *dev, size_t size, void *cpu_addr)
>>
>> if (pages)
>> __iommu_dma_free_pages(pages, count);
>> - if (page && !dma_release_from_contiguous(dev, page, count))
>> - __free_pages(page, get_order(alloc_size));
>> + if (page)
>> + dma_free_contiguous(dev, page, alloc_size);
>> }
>>
>> static void iommu_dma_free(struct device *dev, size_t size, void *cpu_addr,
>> @@ -970,12 +970,7 @@ static void *iommu_dma_alloc_pages(struct device *dev, size_t size,
>> struct page *page = NULL;
>> void *cpu_addr;
>>
>> - if (gfpflags_allow_blocking(gfp))
>> - page = dma_alloc_from_contiguous(dev, alloc_size >> PAGE_SHIFT,
>> - get_order(alloc_size),
>> - gfp & __GFP_NOWARN);
>> - if (!page)
>> - page = alloc_pages(gfp, get_order(alloc_size));
>> + page = dma_alloc_contiguous(dev, alloc_size, gfp);
>> if (!page)
>> return NULL;
>>
>> @@ -997,8 +992,7 @@ static void *iommu_dma_alloc_pages(struct device *dev, size_t size,
>> memset(cpu_addr, 0, alloc_size);
>> return cpu_addr;
>> out_free_pages:
>> - if (!dma_release_from_contiguous(dev, page, alloc_size >> PAGE_SHIFT))
>> - __free_pages(page, get_order(alloc_size));
>> + dma_free_contiguous(dev, page, alloc_size);
>> return NULL;
>> }
>>
>> --
>> 2.17.1
> ---end quoted text---
>

\
 
 \ /
  Last update: 2019-06-14 12:43    [W:0.093 / U:8.312 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site