diff options
author | Liam Howlett <Liam.Howlett@oracle.com> | 2023-02-27 18:36:03 +0100 |
---|---|---|
committer | Andrew Morton <akpm@linux-foundation.org> | 2023-04-06 03:06:21 +0200 |
commit | 8372f4d83f96f35915106093cde4565836587123 (patch) | |
tree | 7887ffe5a6636506e39df77709988589b94ad112 /lib | |
parent | maple_tree: fix freeing of nodes in rcu mode (diff) | |
download | linux-8372f4d83f96f35915106093cde4565836587123.tar.xz linux-8372f4d83f96f35915106093cde4565836587123.zip |
maple_tree: remove extra smp_wmb() from mas_dead_leaves()
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")
Signed-off-by: Liam Howlett <Liam.Howlett@oracle.com>
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/maple_tree.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 946acda29521..96d673e4ba5b 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -5503,7 +5503,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); } |