[PATCH v3 00/30] maple_tree: Replace big node with maple copy

Liam R. Howlett Liam.Howlett at oracle.com
Mon Feb 2 07:40:06 PST 2026


* Andrew Morton <akpm at linux-foundation.org> [260131 15:27]:
> On Fri, 30 Jan 2026 15:59:05 -0500 "Liam R. Howlett" <Liam.Howlett at oracle.com> wrote:
> 
> > The big node struct was created for simplicity of splitting,
> > rebalancing, and spanning store operations by using a copy buffer to
> > create the data necessary prior to breaking it up into 256B nodes.
> > Certain operations were rather tricky due to the restriction of keeping
> > NULL entries together and never at the end of a node (except the
> > right-most node).
> > 
> 
> Updated, thanks.
> 
> What are your thoughts on adding this to 6.19?  I'd expect to move it
> into mm-stable Feb 17ish.

I think the chance of making 6.19 has passed.

Can we please target getting this into testing in linux-next as soon as
6.19 ships?

The priority for me is to ensure this is rock-solid prior to release.
My concerns are corner cases and arch specific issues, which I can only
do so much to mitigate on my own.  My hope is that linux-next exposure
will help with those concerns.

So, at this point, I think the right call is delaying until after next
Sunday.

> 
> > Changes since v2:
> >  - Whitespace fix in rebalance_data()
> >  - Added ma_init_slot() for cleaner casting during RCU_INIT_POINTER().
> >    Thanks test robot & SK [1]
> >  - Fixed off-by-one in rebalance_data() which caused node overuse,
> >    reported by linux-next. Thanks Mark [2]
> >  - Added new patch to reproducer to test cases in userspace testing for
> >    the rebalance_data() off-by-one
> 
> Below is how v3 altered mm.git:

This looks correct.  I did check my git diff here between my two
branches and it is identical to what you sent out.

...

> +	 *
> +	 * The bugs tree:
> +	 * root    4      Label     R
> +	 *        /\               /\
> +	 *       9   X            F
> +	 *      /\   /\          /
> +	 *     9   X            E
> +	 *    /\   /\          /\
> +	 *   4  8             C  D
> +	 *  /\               /\
> +	 * 6  9             A  B
> +	 * ^ becomes 5 with the write.
> +	 *

I especially like the ASCII art in the test, totally worth the wait.

Thanks,
Liam



More information about the maple-tree mailing list