X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=include%2Fasm-m32r%2Fsystem.h;h=4ce0619f6989024855782484766eb0adfa88cc78;hb=0c1cca1d8e0d58775dad43374f925e6cddf1bebc;hp=66c4742f09e74e82a9ba7d3eb59c8f41c8922a70;hpb=602cada851b28c5792339786efe872fbdc1f5d41;p=powerpc.git diff --git a/include/asm-m32r/system.h b/include/asm-m32r/system.h index 66c4742f09..4ce0619f69 100644 --- a/include/asm-m32r/system.h +++ b/include/asm-m32r/system.h @@ -18,7 +18,7 @@ * switch_to(prev, next) should switch from task `prev' to `next' * `prev' will never be the same as `next'. * - * `next' and `prev' should be task_t, but it isn't always defined + * `next' and `prev' should be struct task_struct, but it isn't always defined */ #define switch_to(prev, next, last) do { \ @@ -328,16 +328,15 @@ __cmpxchg(volatile void *ptr, unsigned long old, unsigned long new, int size) #define smp_rmb() rmb() #define smp_wmb() wmb() #define smp_read_barrier_depends() read_barrier_depends() +#define set_mb(var, value) do { (void) xchg(&var, value); } while (0) #else #define smp_mb() barrier() #define smp_rmb() barrier() #define smp_wmb() barrier() #define smp_read_barrier_depends() do { } while (0) +#define set_mb(var, value) do { var = value; barrier(); } while (0) #endif -#define set_mb(var, value) do { xchg(&var, value); } while (0) -#define set_wmb(var, value) do { var = value; wmb(); } while (0) - #define arch_align_stack(x) (x) #endif /* _ASM_M32R_SYSTEM_H */