Merge branch 'rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip...
[platform/kernel/linux-starfive.git] / arch / arm / lib / bitops.h
index b8c14e9..c7f2627 100644 (file)
@@ -1,4 +1,3 @@
-#include <linux/config.h>
 
 #if __LINUX_ARM_ARCH__ >= 6 && defined(CONFIG_CPU_32v6K)
        .macro  bitop, instr
        mov     r2, #1
        add     r1, r1, r0, lsr #3      @ Get byte offset
        mov     r3, r2, lsl r3          @ create mask
+       smp_dmb
 1:     ldrexb  r2, [r1]
        ands    r0, r2, r3              @ save old value of bit
        \instr  r2, r2, r3                      @ toggle bit
        strexb  ip, r2, [r1]
        cmp     ip, #0
        bne     1b
+       smp_dmb
        cmp     r0, #0
        movne   r0, #1
 2:     mov     pc, lr
@@ -48,7 +49,7 @@
  * @store: store instruction
  *
  * Note: we can trivially conditionalise the store instruction
- * to avoid dirting the data cache.
+ * to avoid dirtying the data cache.
  */
        .macro  testop, instr, store
        add     r1, r1, r0, lsr #3