parisc: Remove unnecessary barriers from spinlock.h
authorJohn David Anglin <dave.anglin@bell.net>
Sun, 12 Aug 2018 20:31:17 +0000 (16:31 -0400)
committerHelge Deller <deller@gmx.de>
Mon, 13 Aug 2018 07:31:25 +0000 (09:31 +0200)
commit3b885ac1dc35b87a39ee176a6c7e2af9c789d8b8
tree02d868f6c7430cec3e2f66eac338056dbd6908c4
parent7797167ffde1f00446301cb22b37b7c03194cfaf
parisc: Remove unnecessary barriers from spinlock.h

Now that mb() is an instruction barrier, it will slow performance if we issue
unnecessary barriers.

The spinlock defines have a number of unnecessary barriers.  The __ldcw()
define is both a hardware and compiler barrier.  The mb() barriers in the
routines using __ldcw() serve no purpose.

The only barrier needed is the one in arch_spin_unlock().  We need to ensure
all accesses are complete prior to releasing the lock.

Signed-off-by: John David Anglin <dave.anglin@bell.net>
Cc: stable@vger.kernel.org # 4.0+
Signed-off-by: Helge Deller <deller@gmx.de>
arch/parisc/include/asm/spinlock.h