]> git.baikalelectronics.ru Git - kernel.git/commit
media: videobuf-dma-contig: use dma_mmap_coherent
authorChristoph Hellwig <hch@lst.de>
Wed, 18 Dec 2019 10:39:07 +0000 (11:39 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 18 Jan 2023 10:41:04 +0000 (11:41 +0100)
commit4a52d776b549ba6d7759730e660b0dc0be690aef
tree3c2f6e505b68826dc81b5266989e92adab7af1e7
parentea07cb9fa818afe5cbe746acd75c5c66871c8c5b
media: videobuf-dma-contig: use dma_mmap_coherent

[ Upstream commit b3dc3f8e49577840dc8ac8a365c5b3da4edb10b8 ]

dma_alloc_coherent does not return a physical address, but a DMA address,
which might be remapped or have an offset.  Passing the DMA address to
vm_iomap_memory is thus broken.

Use the proper dma_mmap_coherent helper instead, and stop passing
__GFP_COMP to dma_alloc_coherent, as the memory management inside the
DMA allocator is hidden from the callers and does not require it.

With this the gfp_t argument to __videobuf_dc_alloc can be removed and
hard coded to GFP_KERNEL.

Fixes: 52e4bab6fb7a ("[media] videobuf-dma-contig: add cache support")
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/media/v4l2-core/videobuf-dma-contig.c