As spin_unlock_wait() is defined as equivalent to spin_lock();
spin_unlock(), the smp_mb() after spin_lock() is not required.

Remove it.

Signed-off-by: Manfred Spraul <[email protected]>
---
 net/netfilter/nf_conntrack_core.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/net/netfilter/nf_conntrack_core.c 
b/net/netfilter/nf_conntrack_core.c
index c8a2d26..7a3b5e6 100644
--- a/net/netfilter/nf_conntrack_core.c
+++ b/net/netfilter/nf_conntrack_core.c
@@ -82,10 +82,7 @@ void nf_conntrack_lock(spinlock_t *lock) __acquires(lock)
        /* 1) Acquire the lock */
        spin_lock(lock);
 
-       /* 2) Order storing the lock and reading nf_conntrack_locks_all */
-       smp_mb();
-
-       /* 3) read nf_conntrack_locks_all, with ACQUIRE semantics */
+       /* 2) read nf_conntrack_locks_all, with ACQUIRE semantics */
        if (likely(smp_load_acquire(&nf_conntrack_locks_all) == false))
                return;
 
-- 
2.7.4

Reply via email to