Re: [PATCH] maple_tree: export symbol mas_preallocate()

From: Danilo Krummrich
Date: Wed Mar 08 2023 - 09:35:31 EST


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@xxxxxxxxxx>

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.


* Danilo Krummrich <dakr@xxxxxxxxxx> [230301 20:10]:
Fix missing EXPORT_SYMBOL_GPL() statement for mas_preallocate().

Signed-off-by: Danilo Krummrich <dakr@xxxxxxxxxx>
---
lib/maple_tree.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/lib/maple_tree.c b/lib/maple_tree.c
index 26e2045d3cda..3bfb8a6f3f6d 100644
--- a/lib/maple_tree.c
+++ b/lib/maple_tree.c
@@ -5733,6 +5733,7 @@ int mas_preallocate(struct ma_state *mas, void *entry, gfp_t gfp)
mas_reset(mas);
return ret;
}
+EXPORT_SYMBOL_GPL(mas_preallocate);
/*
* mas_destroy() - destroy a maple state.
--
2.39.2