summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiam R. Howlett <Liam.Howlett@Oracle.com>2023-04-11 11:10:52 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-04-13 17:02:58 +0200
commit425e737db89bd9774ae4fdd51f93fc5f8bb63c9e (patch)
tree319ea11fd23f248292209bea1e37b54cfa98dc3b
parentbc5ab3677b2bd17b127dd9a5a9c2c81799b092ef (diff)
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 <Liam.Howlett@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--lib/maple_tree.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/lib/maple_tree.c b/lib/maple_tree.c
index f7513c549a94..aeb218f2ef28 100644
--- a/lib/maple_tree.c
+++ b/lib/maple_tree.c
@@ -5500,7 +5500,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);
}