• John David Anglin's avatar
    parisc: Remove unnecessary barriers from spinlock.h · 3b885ac1
    John David Anglin authored
    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: default avatarJohn David Anglin <dave.anglin@bell.net>
    Cc: stable@vger.kernel.org # 4.0+
    Signed-off-by: default avatarHelge Deller <deller@gmx.de>
    3b885ac1
spinlock.h 4.02 KB