Hi Maxime, On 03.03.2026 11:13, Maxime Ripard wrote: > The recent introduction of heaps in the optee driver [1] made possible > the creation of heaps as modules. > > It's generally a good idea if possible, including for the already > existing system and CMA heaps. > > The system one is pretty trivial, the CMA one is a bit more involved, > especially since we have a call from kernel/dma/contiguous.c to the CMA > heap code. This was solved by turning the logic around and making the > CMA heap call into the contiguous DMA code. > > Let me know what you think, > Maxime > > 1: > https://lore.kernel.org/dri-devel/[email protected]/ > > Signed-off-by: Maxime Ripard <[email protected]>
I'm okay with the kernel/dma/contiguous.c changes. I only wonder how to properly merge them. There are other pending changes to kernel/dma/contiguous.c file [1] and if they finally get reviewed, I would like to merge both via dma-mapping-for-next tree. Then I can provide a stable branch for merging the remaining dma-buf pathes. Is it okay for You? 1. https://lore.kernel.org/all/[email protected]/ > --- > Changes in v3: > - Squashed cma_get_name and cma_alloc/release patches > - Fixed typo in Export dev_get_cma_area commit title > - Fixed compilation failure with DMA_CMA but not OF_RESERVED_MEM > - Link to v2: > https://lore.kernel.org/r/[email protected] > > Changes in v2: > - Collect tags > - Don't export dma_contiguous_default_area anymore, but export > dev_get_cma_area instead > - Mentioned that heap modules can't be removed > - Link to v1: > https://lore.kernel.org/r/[email protected] > > --- > Maxime Ripard (8): > dma: contiguous: Turn heap registration logic around > dma: contiguous: Make dev_get_cma_area() a proper function > dma: contiguous: Make dma_contiguous_default_area static > dma: contiguous: Export dev_get_cma_area() > mm: cma: Export cma_alloc(), cma_release() and cma_get_name() > dma-buf: heaps: Export mem_accounting parameter > dma-buf: heaps: cma: Turn the heap into a module > dma-buf: heaps: system: Turn the heap into a module > > drivers/dma-buf/dma-heap.c | 1 + > drivers/dma-buf/heaps/Kconfig | 4 ++-- > drivers/dma-buf/heaps/cma_heap.c | 21 +++++---------------- > drivers/dma-buf/heaps/system_heap.c | 5 +++++ > include/linux/dma-map-ops.h | 18 ++++++++++-------- > kernel/dma/contiguous.c | 37 > ++++++++++++++++++++++++++++++++++--- > mm/cma.c | 3 +++ > 7 files changed, 60 insertions(+), 29 deletions(-) > --- > base-commit: 499a718536dc0e1c1d1b6211847207d58acd9916 > change-id: 20260225-dma-buf-heaps-as-modules-1034b3ec9f2a > > Best regards, Best regards -- Marek Szyprowski, PhD Samsung R&D Institute Poland
