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

2013-12-06 Thread Simon Marchi
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.mar...@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


___
lttng-dev mailing list
lttng-dev@lists.lttng.org
http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev


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

2013-12-06 Thread Mathieu Desnoyers
- Original Message -
 From: Simon Marchi simon.mar...@polymtl.ca
 To: lttng-dev@lists.lttng.org
 Sent: Friday, December 6, 2013 10:17:55 PM
 Subject: [lttng-dev] [PATCH userspace-rcu] Set RCU_HAVE_FENCE to false on 
 Intel Xeon Phi
 
 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.

Merged. It's overkill, but at least it will compile. We'll see if we
want to improve the memory barriers and make them cheaper as an
optimization.

Thanks,

Mathieu

 
 Signed-off-by: Simon Marchi simon.mar...@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
 
 
 ___
 lttng-dev mailing list
 lttng-dev@lists.lttng.org
 http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
 

-- 
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com

___
lttng-dev mailing list
lttng-dev@lists.lttng.org
http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev