On 2/25/26 17:41, Maxime Ripard wrote: > The CMA dma-buf heap uses cma_alloc() and cma_release() to allocate and > free, respectively, its CMA buffers. > > However, these functions are not exported. Since we want to turn the CMA > heap into a module, let's export them both. > > Signed-off-by: Maxime Ripard <[email protected]> > --- > mm/cma.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/mm/cma.c b/mm/cma.c > index > 94b5da468a7d719e5144d33b06bcc7619c0fbcc9..be142b473f3bd41b9c7d8ba4397f018f6993d962 > 100644 > --- a/mm/cma.c > +++ b/mm/cma.c > @@ -949,10 +949,11 @@ struct page *cma_alloc(struct cma *cma, unsigned long > count, > if (page) > set_pages_refcounted(page, count); > > return page; > } > +EXPORT_SYMBOL_GPL(cma_alloc); > > static struct cma_memrange *find_cma_memrange(struct cma *cma, > const struct page *pages, unsigned long count) > { > struct cma_memrange *cmr = NULL; > @@ -1025,10 +1026,11 @@ bool cma_release(struct cma *cma, const struct page > *pages, > > __cma_release_frozen(cma, cmr, pages, count); > > return true; > } > +EXPORT_SYMBOL_GPL(cma_release); > > bool cma_release_frozen(struct cma *cma, const struct page *pages, > unsigned long count) > { > struct cma_memrange *cmr; >
I'm wondering whether we want to restrict all these exports to the dma-buf module only using EXPORT_SYMBOL_FOR_MODULES(). Especially dma_contiguous_default_area() (patch #4), I am not sure whether we want arbitrary modules to mess with that. -- Cheers, David
