Re: [PATCH 15/18] dma-mapping: add a new dma_alloc_pages API
From: Thomas Bogendoerfer
Date: Tue Sep 22 2020 - 06:56:32 EST
On Tue, Sep 15, 2020 at 05:51:19PM +0200, Christoph Hellwig wrote:
> This API is the equivalent of alloc_pages, except that the returned memory
> is guaranteed to be DMA addressable by the passed in device. The
> implementation will also be used to provide a more sensible replacement
> for DMA_ATTR_NON_CONSISTENT flag.
>
> Additionally dma_alloc_noncoherent is switched over to use dma_alloc_pages
> as its backend.
>
> Signed-off-by: Christoph Hellwig <hch@xxxxxx>
> ---
> Documentation/core-api/dma-attributes.rst | 8 ---
> arch/alpha/kernel/pci_iommu.c | 2 +
> arch/arm/mm/dma-mapping-nommu.c | 2 +
> arch/arm/mm/dma-mapping.c | 4 ++
> arch/ia64/hp/common/sba_iommu.c | 2 +
> arch/mips/jazz/jazzdma.c | 7 +--
> arch/powerpc/kernel/dma-iommu.c | 2 +
> arch/powerpc/platforms/ps3/system-bus.c | 4 ++
> arch/powerpc/platforms/pseries/vio.c | 2 +
> arch/s390/pci/pci_dma.c | 2 +
> arch/x86/kernel/amd_gart_64.c | 2 +
> drivers/iommu/dma-iommu.c | 2 +
> drivers/iommu/intel/iommu.c | 4 ++
> drivers/parisc/ccio-dma.c | 2 +
> drivers/parisc/sba_iommu.c | 2 +
> drivers/xen/swiotlb-xen.c | 2 +
> include/linux/dma-direct.h | 5 ++
> include/linux/dma-mapping.h | 34 ++++++------
> include/linux/dma-noncoherent.h | 3 --
> kernel/dma/direct.c | 52 ++++++++++++++++++-
> kernel/dma/mapping.c | 63 +++++++++++++++++++++--
> kernel/dma/ops_helpers.c | 35 +++++++++++++
> kernel/dma/virt.c | 2 +
> 23 files changed, 206 insertions(+), 37 deletions(-)
Acked-by: Thomas Bogendoerfer <tsbogend@xxxxxxxxxxxxxxxx> (MIPS part)
--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]