f8be71c
diff -urN glibc-2.20.mod/sysdeps/unix/sysv/linux/x86/elision-conf.c glibc-2.20/sysdeps/unix/sysv/linux/x86/elision-conf.c
f8be71c
--- glibc-2.20.mod/sysdeps/unix/sysv/linux/x86/elision-conf.c	2014-09-27 00:25:46.443462345 -0400
f8be71c
+++ glibc-2.20/sysdeps/unix/sysv/linux/x86/elision-conf.c	2014-09-27 00:29:53.586615813 -0400
f8be71c
@@ -62,12 +62,16 @@
f8be71c
 	      char **argv  __attribute__ ((unused)),
f8be71c
 	      char **environ)
f8be71c
 {
Siddhesh Poyarekar daa5a48
-  __elision_available = HAS_CPU_FEATURE (RTM);
f8be71c
 #ifdef ENABLE_LOCK_ELISION
Siddhesh Poyarekar daa5a48
+  __elision_available = HAS_CPU_FEATURE (RTM);
f8be71c
   __pthread_force_elision = __libc_enable_secure ? 0 : __elision_available;
f8be71c
-#endif
Siddhesh Poyarekar daa5a48
   if (!HAS_CPU_FEATURE (RTM))
f8be71c
     __elision_aconf.retry_try_xbegin = 0; /* Disable elision on rwlocks */
f8be71c
+#else
f8be71c
+  __elision_available = 0;
f8be71c
+  __pthread_force_elision = 0;
f8be71c
+  __elision_aconf.retry_try_xbegin = 0;
f8be71c
+#endif
f8be71c
 }
f8be71c
 
f8be71c
 #ifdef SHARED