diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-x86/system_32.h | 6 | ||||
-rw-r--r-- | include/asm-x86/system_64.h | 4 |
2 files changed, 7 insertions, 3 deletions
diff --git a/include/asm-x86/system_32.h b/include/asm-x86/system_32.h index 8b15bd3057c..e7e5d426fef 100644 --- a/include/asm-x86/system_32.h +++ b/include/asm-x86/system_32.h @@ -274,7 +274,11 @@ static inline unsigned long get_limit(unsigned long segment) #ifdef CONFIG_SMP #define smp_mb() mb() -#define smp_rmb() rmb() +#ifdef CONFIG_X86_PPRO_FENCE +# define smp_rmb() rmb() +#else +# define smp_rmb() barrier() +#endif #ifdef CONFIG_X86_OOSTORE # define smp_wmb() wmb() #else diff --git a/include/asm-x86/system_64.h b/include/asm-x86/system_64.h index eff730b1192..5022aecc333 100644 --- a/include/asm-x86/system_64.h +++ b/include/asm-x86/system_64.h @@ -141,8 +141,8 @@ static inline void write_cr8(unsigned long val) #ifdef CONFIG_SMP #define smp_mb() mb() -#define smp_rmb() rmb() -#define smp_wmb() wmb() +#define smp_rmb() barrier() +#define smp_wmb() barrier() #define smp_read_barrier_depends() do {} while(0) #else #define smp_mb() barrier() |