Re: [PATCH v3 5/6] media: uvcvideo: Use dma_alloc_noncontiguos API
From: Christoph Hellwig <hch@lst.de>
Date: 2020-12-09 11:13:35
Also in:
linux-iommu, linux-media, lkml
From: Christoph Hellwig <hch@lst.de>
Date: 2020-12-09 11:13:35
Also in:
linux-iommu, linux-media, lkml
On Tue, Dec 08, 2020 at 01:54:00PM +0900, Tomasz Figa wrote:
quoted
From the media perspective, it would be good to have the vmapoptional, similarly to the DMA_ATTR_NO_KERNEL_MAPPING attribute for coherent allocations. Actually, in the media drivers, the need to have a kernel mapping of the DMA buffers corresponds to a minority of the drivers. Most of them only need to map them to the userspace. Nevertheless, that minority actually happens to be quite widely used, e.g. the uvcvideo driver, so we can't go to the other extreme and just drop the vmap at all.
My main problem is that the DMA_ATTR_NO_KERNEL_MAPPING makes a mess of an API. I'd much rather have low-level API that returns the discontiguous allocations and another one that vmaps them rather than starting to overload arguments like in dma_alloc_attrs with DMA_ATTR_NO_KERNEL_MAPPING.
In any case, Sergey is going to share a preliminary patch on how the current API would be used in the V4L2 videobuf2 framework. That should give us more input on how such a helper could look.
Awesome!