]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
maple_tree: remove extra smp_wmb() from mas_dead_leaves()
authorLiam R. Howlett <Liam.Howlett@Oracle.com>
Mon, 27 Feb 2023 17:36:03 +0000 (09:36 -0800)
committerLiam R. Howlett <Liam.Howlett@oracle.com>
Thu, 23 Mar 2023 15:54:00 +0000 (11:54 -0400)
The call to mte_set_dead_node() before the smp_wmb() already calls
smp_wmb() so this is not needed.  This is an optimization for the RCU mode
of the maple tree.

Link: https://lkml.kernel.org/r/20230227173632.3292573-5-surenb@google.com
Fixes: 54a611b60590 ("Maple Tree: add new data structure")
Cc: stable@vger.kernel.org
Signed-off-by: Liam Howlett <Liam.Howlett@oracle.com>
lib/maple_tree.c

index 0f0a2d4850e820bb8a92b312d988422f7d3aa844..281be0997e5526dfdd2c1c103adee52bde9a3409 100644 (file)
@@ -5501,7 +5501,6 @@ unsigned char mas_dead_leaves(struct ma_state *mas, void __rcu **slots,
                        break;
 
                mte_set_node_dead(entry);
-               smp_wmb(); /* Needed for RCU */
                node->type = type;
                rcu_assign_pointer(slots[offset], node);
        }