Set RCU_HAVE_FENCE to false on Intel Xeon Phi
authorSimon Marchi <simon.marchi@polymtl.ca>
Fri, 6 Dec 2013 21:17:55 +0000 (16:17 -0500)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 6 Dec 2013 21:41:43 +0000 (22:41 +0100)
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@polymtl.ca>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
configure.ac

index 774094e0ba4b935f5f2b59a3dfb432434b62633a..079c145eb9677613f21b6e166efbc8b6ded86510 100644 (file)
@@ -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])
        ],[
This page took 0.034398 seconds and 4 git commands to generate.