[PATCH v2] arch: use WRITE_ONCE/READ_ONCE in smp_store_release/smp_load_acquire

2015-08-02 Thread Andrey Konovalov
Replace ACCESS_ONCE() macro in smp_store_release() and smp_load_acquire() with WRITE_ONCE() and READ_ONCE() on x86, arm, arm64, ia64, metag, mips, powerpc, s390, sparc and asm-generic since ACCESS_ONCE does not work reliably on non-scalar types. WRITE_ONCE() and READ_ONCE() were introduced in the

Re: [PATCH v2] arch: use WRITE_ONCE/READ_ONCE in smp_store_release/smp_load_acquire

2015-08-02 Thread Peter Zijlstra
On Sun, Aug 02, 2015 at 05:11:04PM +0200, Andrey Konovalov wrote: > Replace ACCESS_ONCE() macro in smp_store_release() and smp_load_acquire() > with WRITE_ONCE() and READ_ONCE() on x86, arm, arm64, ia64, metag, mips, > powerpc, s390, sparc and asm-generic since ACCESS_ONCE does not work > reliably

Re: [PATCH v2] arch: use WRITE_ONCE/READ_ONCE in smp_store_release/smp_load_acquire

2015-08-02 Thread Davidlohr Bueso
On Sun, 2015-08-02 at 17:11 +0200, Andrey Konovalov wrote: > Replace ACCESS_ONCE() macro in smp_store_release() and smp_load_acquire() > with WRITE_ONCE() and READ_ONCE() on x86, arm, arm64, ia64, metag, mips, > powerpc, s390, sparc and asm-generic since ACCESS_ONCE does not work > reliably on non-

Re: [PATCH v2] arch: use WRITE_ONCE/READ_ONCE in smp_store_release/smp_load_acquire

2015-08-02 Thread Michael Ellerman
On Sun, 2015-08-02 at 17:11 +0200, Andrey Konovalov wrote: > Replace ACCESS_ONCE() macro in smp_store_release() and smp_load_acquire() > with WRITE_ONCE() and READ_ONCE() on x86, arm, arm64, ia64, metag, mips, > powerpc, s390, sparc and asm-generic since ACCESS_ONCE does not work > reliably on non-

Re: [PATCH v2] arch: use WRITE_ONCE/READ_ONCE in smp_store_release/smp_load_acquire

2015-08-02 Thread Ralf Baechle
On Sun, Aug 02, 2015 at 05:11:04PM +0200, Andrey Konovalov wrote: > diff --git a/arch/mips/include/asm/barrier.h b/arch/mips/include/asm/barrier.h > index 7ecba84..752e0b8 100644 > --- a/arch/mips/include/asm/barrier.h > +++ b/arch/mips/include/asm/barrier.h > @@ -133,12 +133,12 @@ > do {