[PATCH] maple_tree: export symbol mas_preallocate()

Danilo Krummrich dakr at redhat.com
Wed Mar 8 07:18:55 PST 2023


On 3/8/23 15:43, Christoph Hellwig wrote:
> On Wed, Mar 08, 2023 at 03:34:29PM +0100, Danilo Krummrich wrote:
>> On 3/8/23 11:59, Vlastimil Babka wrote:
>>> On 3/2/23 02:52, Liam R. Howlett wrote:
>>>> Thanks for the patch.  This should indeed be exported.
>>>>
>>>> Reviewed-by: Liam R. Howlett <Liam.Howlett at oracle.com>
>>>
>>> What uses it? Don't we export only things used by in-kernel modules?
>>
>> mas_preallocate() is part of the maple tree's 'Advanced API'. All other
>> functions of this API are exported already.
>>
>> More specifically, e.g. mas_store_prealloc() is exported which doesn't make
>> a lot of sense without mas_preallocate() being available too.
>>
>> I don't think it is used outside of mm yet, but as a generic tree
>> implementation maple tree is pretty likely to be used in code built as
>> module, e.g. drivers.
> 
> If anyone wants to use they can add the export as needed.
> 

Valid perception, though personally I wouldn't share it in this specific 
case.

Anyway, it's just that all other functions of the 'Advanced API' are 
exported already without them having other users than mm either, e.g. 
mas_store_prealloc() can't be used without mas_preallocate(), hence 
exporting one, but not the other doesn't really make sense.

Consistency wise I think we should either also export mas_preallocate() 
or don't export the other ones either.




More information about the maple-tree mailing list