From 46c749eac979c0bf280f760971367e9babe4d05f Mon Sep 17 00:00:00 2001 From: Herbert Xu Date: Tue, 8 Dec 2015 17:09:04 +0800 Subject: [PATCH] rhashtable: Remove unnecessary wmb for future_tbl The patch 9497df88ab5567daa001829051c5f87161a81ff0 ("rhashtable: Fix reader/rehash race") added a pair of barriers. In fact the wmb is superfluous because every subsequent write to the old or new hash table uses rcu_assign_pointer, which itself carriers a full barrier prior to the assignment. Therefore we may remove the explicit wmb. Signed-off-by: Herbert Xu Acked-by: Thomas Graf Signed-off-by: David S. Miller --- lib/rhashtable.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/lib/rhashtable.c b/lib/rhashtable.c index a54ff8949f91..0f3be3fad2b2 100644 --- a/lib/rhashtable.c +++ b/lib/rhashtable.c @@ -231,9 +231,6 @@ static int rhashtable_rehash_attach(struct rhashtable *ht, */ rcu_assign_pointer(old_tbl->future_tbl, new_tbl); - /* Ensure the new table is visible to readers. */ - smp_wmb(); - spin_unlock_bh(old_tbl->locks); return 0;