Re: [PATCH 2/2] Documentation: maple_tree: Clarify behavior when using reserved values

From: Liam R. Howlett

Date: Wed May 06 2026 - 23:24:52 EST


On 26/05/04 05:57PM, Wei-Lin Chang wrote:
> It doesn't matter whether the normal or the advanced API is used if the
> user uses xa_{mk, to}_value when storing and retrieving the values. Just
> specify that the normal API blocks usages of reserved values while the
> advanced API does not.

Your comment above is incorrect.

The normal API will filter out reserved values on return while the
advanced API will return whatever is stored there regardless of the
value.

Meaning, if you store a reserved value with the advanced API, it will
not be returned by the normal API.

>
> Signed-off-by: Wei-Lin Chang <weilin.chang@xxxxxxx>
> ---
> Documentation/core-api/maple_tree.rst | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/Documentation/core-api/maple_tree.rst b/Documentation/core-api/maple_tree.rst
> index 87020a30ba69..e5ccafb84804 100644
> --- a/Documentation/core-api/maple_tree.rst
> +++ b/Documentation/core-api/maple_tree.rst
> @@ -30,9 +30,9 @@ Tree reserves values with the bottom two bits set to '10' which are below 4096
> (ie 2, 6, 10 .. 4094) for internal use. If the entries may use reserved
> entries then the users can convert the entries using xa_mk_value() and convert
> them back by calling xa_to_value(). Note that xa_{mk, to}_value() bit shifts
> -the given data, so the top bit will be lost. If the user needs to use a
> -reserved value, then the user can convert the value when using the
> -:ref:`maple-tree-advanced-api`, but are blocked by the normal API.
> +the given data, so the top bit will be lost. Usage of reserved values is
> +blocked by the normal API, and will cause undefined behavior if used with the
> +:ref:`maple-tree-advanced-api`.

Which behaviour is undefined?

>
> The Maple Tree can also be configured to support searching for a gap of a given
> size (or larger).
> --
> 2.43.0
>
>
> --
> maple-tree mailing list
> maple-tree@xxxxxxxxxxxxxxxxxxx
> https://lists.infradead.org/mailman/listinfo/maple-tree