From: Liam R. Howlett Date: Tue, 11 Apr 2023 15:10:52 +0000 (-0400) Subject: maple_tree: remove extra smp_wmb() from mas_dead_leaves() X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=d3af5f8a50dd75f4d071e00c16d9ac3f0ae3858f;p=users%2Fjedix%2Flinux-maple.git maple_tree: remove extra smp_wmb() from mas_dead_leaves() commit 8372f4d83f96f35915106093cde4565836587123 upstream. 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 Signed-off-by: Greg Kroah-Hartman --- diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 7f451e0c6fba..f7c204904b8f 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -5495,7 +5495,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); }