Re: [PATCH 02/10] maple_tree: Drop mtree_alloc_{range,rrange}() and related functions.

From: Liam R. Howlett
Date: Mon May 15 2023 - 13:39:38 EST


* Matthew Wilcox <willy@xxxxxxxxxxxxx> [230515 13:27]:
> On Mon, May 15, 2023 at 09:17:49PM +0800, Peng Zhang wrote:
> > Drop mtree_alloc_{range,rrange}(), mas_{rev_}alloc() and mas_fill_gap().
> > mtree_alloc_{range,rrange}() currently have no users and can be easily
> > implemented with mas_empty_area{_rev}(). mas_{rev_}alloc() and
> > mas_fill_gap() are just their internal functions, drop them together.
>
> No, I think this is the wrong way to go.
>
> Most users should not be using the mas_* API. These are the advanced
> APIs. Most users will want to use mtree_alloc_range(). Just like most
> users of the XArray use the xa_insert() API rather than open-coding the
> xa_state and calling the xas_* APIs.
>
> Please read Documentation/core-api/xarray.rst and maple_tree.rst for more
> details on Normal vs Advanced API. The real problem is that we have so
> few users today, so you haven't seen that most people don't want to use
> the advanced APIs.


Peng, Apologies on the confusion. Please do as Matthew said. If you
have a way to unify the functionality to use the same internal
functions, then I think that would be a welcome change.