[lttng-dev] [PATCH userspace-rcu] Set RCU_HAVE_FENCE to false on Intel Xeon Phi

Simon Marchi simon.marchi at polymtl.ca
Fri Dec 6 16:17:55 EST 2013


It currently fails to compile, because the Phi does not have fence
instructions.

It will use lock prefixed instructions for all memory barriers, which
is overkill for this platform, but at least it will work.

Signed-off-by: Simon Marchi <simon.marchi at polymtl.ca>
---
 configure.ac |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/configure.ac b/configure.ac
index 774094e..079c145 100644
--- a/configure.ac
+++ b/configure.ac
@@ -140,7 +140,10 @@ AS_IF([test "x$ARCHTYPE" = "xx86"],[
 	#For now, using lock; addl compatibility mode even for i686, because the
 	#Pentium III is seen as a i686, but lacks mfence instruction.
 	#Only using fence for x86_64.
-	AS_IF([test "x$host_cpu" != "xi386" -a "x$host_cpu" != "xi486" -a "x$host_cpu" != "xi586" -a "x$host_cpu" != "xi686"],[
+	#
+	#k1om is the name for the Intel MIC family (Xeon Phi). It is an x86_64
+	#variant but lacks fence instructions.
+	AS_IF([test "x$host_cpu" != "xi386" -a "x$host_cpu" != "xi486" -a "x$host_cpu" != "xi586" -a "x$host_cpu" != "xi686" -a "x$host_vendor" != "xk1om"],[
 		AC_MSG_RESULT([yes])
 		AC_DEFINE([CONFIG_RCU_HAVE_FENCE], [1])
 	],[
-- 
1.7.1




More information about the lttng-dev mailing list