... actually add Geert to the cc list. * Liam R. Howlett <Liam.Howlett@xxxxxxxxxx> [230710 11:06]: > * Liam R. Howlett <Liam.Howlett@xxxxxxxxxx> [230707 11:18]: > > * Peng Zhang <zhangpeng.00@xxxxxxxxxxxxx> [230707 06:11]: > > > Set the node limit of the root node so that the last pivot of all nodes > > > is the node limit (if the node is not full). > > This patch also fixes a bug in mas_rev_awalk(). Effectively, always > setting a maximum makes mas_logical_pivot() behave as mas_safe_pivot(). > Without this fix, it is possible that very small tasks would fail to > find the correct gap. Although this has not been observed with real > tasks, it has been reported to happen in m68k nommu running the maple > tree tests. > > Link: https://lore.kernel.org/linux-mm/CAMuHMdV4T53fOw7VPoBgPR7fP6RYqf=CBhD_y_vOg53zZX_DnA@xxxxxxxxxxxxxx/ > Cc: <stable@xxxxxxxxxxxxxxx> > Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> > > > > > > > Signed-off-by: Peng Zhang <zhangpeng.00@xxxxxxxxxxxxx> > > > > This has been on my list of things to do for a while, thanks. > > > > Reviewed-by: Liam R. Howlett <Liam.Howlett@xxxxxxxxxx> > > > > > --- > > > lib/maple_tree.c | 3 ++- > > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > > > diff --git a/lib/maple_tree.c b/lib/maple_tree.c > > > index d3072858c280..f55e59bd9122 100644 > > > --- a/lib/maple_tree.c > > > +++ b/lib/maple_tree.c > > > @@ -3692,7 +3692,8 @@ static inline int mas_root_expand(struct ma_state *mas, void *entry) > > > mas->offset = slot; > > > pivots[slot] = mas->last; > > > if (mas->last != ULONG_MAX) > > > - slot++; > > > + pivots[++slot] = ULONG_MAX; > > > + > > > mas->depth = 1; > > > mas_set_height(mas); > > > ma_set_meta(node, maple_leaf_64, 0, slot); > > > -- > > > 2.20.1 > > > > > > > > -- > maple-tree mailing list > maple-tree@xxxxxxxxxxxxxxxxxxx > https://lists.infradead.org/mailman/listinfo/maple-tree