Re: [RESEND PATCH 1/8] maple_tree: set the node limit when creating a new root node

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



... 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




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux