arm: put CONFIG_RCU_ARM_HAVE_DMB in the global config.h
authorJason Wessel <jason.wessel@windriver.com>
Wed, 4 May 2011 19:14:14 +0000 (15:14 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Wed, 4 May 2011 19:14:14 +0000 (15:14 -0400)
Change CONFIG_ARM_HAVE_DMB to CONFIG_RCU_ARM_HAVE_DMB while at the
same time making it seen as a global setting in urch/config.h.

The initial ARM < v7 work missed this setting, which allowed the URCU
to package to build correctly, but exposed the memorry barriers
defines incorrectly for other applications using the URCU headers.

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
configure.ac
urcu/arch_arm.h
urcu/config.h.in

index 3c61abc69519b158f52af779ca8583ad661f281d..b8c151ab43882f9292dc7eed4ba2d70aa3e723e5 100644 (file)
@@ -20,7 +20,7 @@ AH_TEMPLATE([CONFIG_RCU_HAVE_FENCE], [Defined when on a system that has memory f
 AH_TEMPLATE([CONFIG_RCU_HAVE_FUTEX], [Defined when on a system with futex support.])
 AH_TEMPLATE([CONFIG_RCU_COMPAT_ARCH], [Compatibility mode for i386 which lacks
 cmpxchg instruction.])
 AH_TEMPLATE([CONFIG_RCU_HAVE_FUTEX], [Defined when on a system with futex support.])
 AH_TEMPLATE([CONFIG_RCU_COMPAT_ARCH], [Compatibility mode for i386 which lacks
 cmpxchg instruction.])
-AH_TEMPLATE([CONFIG_ARM_HAVE_DMB], [Use the dmb instruction is available for use on ARM.])
+AH_TEMPLATE([CONFIG_RCU_ARM_HAVE_DMB], [Use the dmb instruction is available for use on ARM.])
 
 # Checks for programs.
 AC_PROG_CC
 
 # Checks for programs.
 AC_PROG_CC
@@ -67,7 +67,7 @@ asm volatile("dmb":::"memory");
 ],
 [
        AC_MSG_RESULT([yes])
 ],
 [
        AC_MSG_RESULT([yes])
-       AC_DEFINE([CONFIG_ARM_HAVE_DMB], [1])
+       AC_DEFINE([CONFIG_RCU_ARM_HAVE_DMB], [1])
 ]
 ,
 [
 ]
 ,
 [
index f97ae1d1d5979cde65920c4a95556a5dec73c223..92df8e9a3a3a11d80a885d59a3cd3940f94b843a 100644 (file)
 extern "C" {
 #endif 
 
 extern "C" {
 #endif 
 
-#ifdef CONFIG_ARM_HAVE_DMB
+#ifdef CONFIG_RCU_ARM_HAVE_DMB
 #define cmm_mb()       asm volatile("dmb":::"memory")
 #define cmm_rmb()      asm volatile("dmb":::"memory")
 #define cmm_wmb()      asm volatile("dmb":::"memory")
 #define cmm_mb()       asm volatile("dmb":::"memory")
 #define cmm_rmb()      asm volatile("dmb":::"memory")
 #define cmm_wmb()      asm volatile("dmb":::"memory")
-#endif /* CONFIG_ARM_HAVE_DMB */
+#endif /* CONFIG_RCU_ARM_HAVE_DMB */
 
 #include <stdlib.h>
 #include <sys/time.h>
 
 #include <stdlib.h>
 #include <sys/time.h>
index 749c3c047aa0902a1a82b84fe3848437a08e8fe0..02c7b2edb279be80171d3615eab796d79578272d 100644 (file)
@@ -1,4 +1,4 @@
-/* urcu/config.h.in. Manually generatad for control over the contained defs. */
+/* urcu/config.h.in. Manually generated for control over the contained defs. */
 
 /* Defined when on a system that has memory fence instructions. */
 #undef CONFIG_RCU_HAVE_FENCE
 
 /* Defined when on a system that has memory fence instructions. */
 #undef CONFIG_RCU_HAVE_FENCE
@@ -13,3 +13,6 @@
 
 /* Compatibility mode for i386 which lacks cmpxchg instruction. */
 #undef CONFIG_RCU_COMPAT_ARCH
 
 /* Compatibility mode for i386 which lacks cmpxchg instruction. */
 #undef CONFIG_RCU_COMPAT_ARCH
+
+/* Use the dmb instruction is available for use on ARM. */
+#undef CONFIG_RCU_ARM_HAVE_DMB
This page took 0.026571 seconds and 4 git commands to generate.