]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
maple_tree: not necessary to check index/last again
authorWei Yang <richard.weiyang@gmail.com>
Thu, 31 Oct 2024 23:16:25 +0000 (23:16 +0000)
committerAndrew Morton <akpm@linux-foundation.org>
Fri, 1 Nov 2024 04:29:35 +0000 (21:29 -0700)
Before calling mas_new_root(), the range has been checked.

Link: https://lkml.kernel.org/r/20241031231627.14316-4-richard.weiyang@gmail.com
Signed-off-by: Wei Yang <richard.weiyang@gmail.com>
Reviewed-by: Liam R. Howlett <Liam.Howlett@Oracle.com>
Cc: Liam R. Howlett <Liam.Howlett@Oracle.com>
Cc: Sidhartha Kumar <sidhartha.kumar@oracle.com>
Cc: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
lib/maple_tree.c

index 071d3055f1fa58052b3ad511bc10bc02bc43ddf2..4900f182e99d7ee96fb311712aedbb93f2a29600 100644 (file)
@@ -3670,7 +3670,9 @@ 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) {
+       WARN_ON_ONCE(mas->index || mas->last != ULONG_MAX);
+
+       if (!entry) {
                mas->depth = 0;
                mas_set_height(mas);
                rcu_assign_pointer(mas->tree->ma_root, entry);