On Fri, Oct 18, 2024 at 01:43:18PM -0400, Liam R. Howlett wrote: >* Wei Yang <richard.weiyang@xxxxxxxxx> [241017 22:40]: >> Before calling mas_new_root(), the range has been checked. >> >> Signed-off-by: Wei Yang <richard.weiyang@xxxxxxxxx> >> CC: Liam R. Howlett <Liam.Howlett@xxxxxxxxxx> >> CC: Sidhartha Kumar <sidhartha.kumar@xxxxxxxxxx> >> CC: Lorenzo Stoakes <lorenzo.stoakes@xxxxxxxxxx> >> --- >> lib/maple_tree.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/lib/maple_tree.c b/lib/maple_tree.c >> index cbbaaf60efa9..db8b89487c98 100644 >> --- a/lib/maple_tree.c >> +++ b/lib/maple_tree.c >> @@ -3662,7 +3662,7 @@ static inline void mas_new_root(struct ma_state *mas, void *entry) >> void __rcu **slots; >> unsigned long *pivots; >> >> - if (!entry && !mas->index && mas->last == ULONG_MAX) { >> + if (!entry) { > >Probably good to catch anyone using this wrong with a WARN_ON_ONCE()? >It also has the effect of documenting what is going on, which is always >nice. > Sure, will add a WARN_ON_ONCE(). >Sorry for not realising this earlier. > >> mas->depth = 0; >> mas_set_height(mas); >> rcu_assign_pointer(mas->tree->ma_root, entry); >> -- >> 2.34.1 >> -- Wei Yang Help you, Help me