CMA: why DMA_ATTR_FORCE_CONTIGUOUS is not used in v4l2 or DRM cma helper

ayaka ayaka at
Fri Jun 11 04:11:58 EDT 2021

Hello All

I am looking for the CMA allocator in current kernel, when I check the videobuf2-dma-contig.c and drm_gem_cma_helper.c, they just call dma_alloc_wc()/dma_alloc_attrs() without any flag that request a contiguous pages.
I could hardly find a driver use the flag DMA_ATTR_FORCE_CONTIGUOUS, what I need to do if I want to allocate a CMA and DMA capable buffer for a driver(not all the buffers, because it may have a iommu in a different direction) ?

And anything I could that limit a driver that only allocate the pages for the DMA in a address base(for example only the low 4G memory) ?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Kernelnewbies mailing list