diff options
Diffstat (limited to 'include/asm-powerpc/system.h')
-rw-r--r-- | include/asm-powerpc/system.h | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/include/asm-powerpc/system.h b/include/asm-powerpc/system.h index 5deb7bc7bb1f..b6d330fe8ed3 100644 --- a/include/asm-powerpc/system.h +++ b/include/asm-powerpc/system.h | |||
@@ -39,7 +39,6 @@ | |||
39 | #define read_barrier_depends() do { } while(0) | 39 | #define read_barrier_depends() do { } while(0) |
40 | 40 | ||
41 | #define set_mb(var, value) do { var = value; mb(); } while (0) | 41 | #define set_mb(var, value) do { var = value; mb(); } while (0) |
42 | #define set_wmb(var, value) do { var = value; wmb(); } while (0) | ||
43 | 42 | ||
44 | #ifdef __KERNEL__ | 43 | #ifdef __KERNEL__ |
45 | #ifdef CONFIG_SMP | 44 | #ifdef CONFIG_SMP |
@@ -215,8 +214,8 @@ __xchg_u32(volatile void *p, unsigned long val) | |||
215 | " stwcx. %3,0,%2 \n\ | 214 | " stwcx. %3,0,%2 \n\ |
216 | bne- 1b" | 215 | bne- 1b" |
217 | ISYNC_ON_SMP | 216 | ISYNC_ON_SMP |
218 | : "=&r" (prev), "=m" (*(volatile unsigned int *)p) | 217 | : "=&r" (prev), "+m" (*(volatile unsigned int *)p) |
219 | : "r" (p), "r" (val), "m" (*(volatile unsigned int *)p) | 218 | : "r" (p), "r" (val) |
220 | : "cc", "memory"); | 219 | : "cc", "memory"); |
221 | 220 | ||
222 | return prev; | 221 | return prev; |
@@ -235,8 +234,8 @@ __xchg_u64(volatile void *p, unsigned long val) | |||
235 | " stdcx. %3,0,%2 \n\ | 234 | " stdcx. %3,0,%2 \n\ |
236 | bne- 1b" | 235 | bne- 1b" |
237 | ISYNC_ON_SMP | 236 | ISYNC_ON_SMP |
238 | : "=&r" (prev), "=m" (*(volatile unsigned long *)p) | 237 | : "=&r" (prev), "+m" (*(volatile unsigned long *)p) |
239 | : "r" (p), "r" (val), "m" (*(volatile unsigned long *)p) | 238 | : "r" (p), "r" (val) |
240 | : "cc", "memory"); | 239 | : "cc", "memory"); |
241 | 240 | ||
242 | return prev; | 241 | return prev; |
@@ -294,8 +293,8 @@ __cmpxchg_u32(volatile unsigned int *p, unsigned long old, unsigned long new) | |||
294 | ISYNC_ON_SMP | 293 | ISYNC_ON_SMP |
295 | "\n\ | 294 | "\n\ |
296 | 2:" | 295 | 2:" |
297 | : "=&r" (prev), "=m" (*p) | 296 | : "=&r" (prev), "+m" (*p) |
298 | : "r" (p), "r" (old), "r" (new), "m" (*p) | 297 | : "r" (p), "r" (old), "r" (new) |
299 | : "cc", "memory"); | 298 | : "cc", "memory"); |
300 | 299 | ||
301 | return prev; | 300 | return prev; |
@@ -317,8 +316,8 @@ __cmpxchg_u64(volatile unsigned long *p, unsigned long old, unsigned long new) | |||
317 | ISYNC_ON_SMP | 316 | ISYNC_ON_SMP |
318 | "\n\ | 317 | "\n\ |
319 | 2:" | 318 | 2:" |
320 | : "=&r" (prev), "=m" (*p) | 319 | : "=&r" (prev), "+m" (*p) |
321 | : "r" (p), "r" (old), "r" (new), "m" (*p) | 320 | : "r" (p), "r" (old), "r" (new) |
322 | : "cc", "memory"); | 321 | : "cc", "memory"); |
323 | 322 | ||
324 | return prev; | 323 | return prev; |