2014-09-27 16:31:11 +00:00
|
|
|
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
|
|
|
|
--- glibc-2.20.mod/sysdeps/unix/sysv/linux/x86/elision-conf.c 2014-09-27 00:25:46.443462345 -0400
|
|
|
|
+++ glibc-2.20/sysdeps/unix/sysv/linux/x86/elision-conf.c 2014-09-27 00:29:53.586615813 -0400
|
|
|
|
@@ -62,12 +62,16 @@
|
|
|
|
char **argv __attribute__ ((unused)),
|
|
|
|
char **environ)
|
|
|
|
{
|
2015-08-14 07:00:00 +00:00
|
|
|
- __elision_available = HAS_CPU_FEATURE (RTM);
|
2014-09-27 16:31:11 +00:00
|
|
|
#ifdef ENABLE_LOCK_ELISION
|
2015-08-14 07:00:00 +00:00
|
|
|
+ __elision_available = HAS_CPU_FEATURE (RTM);
|
2014-09-27 16:31:11 +00:00
|
|
|
__pthread_force_elision = __libc_enable_secure ? 0 : __elision_available;
|
|
|
|
-#endif
|
2015-08-14 07:00:00 +00:00
|
|
|
if (!HAS_CPU_FEATURE (RTM))
|
2014-09-27 16:31:11 +00:00
|
|
|
__elision_aconf.retry_try_xbegin = 0; /* Disable elision on rwlocks */
|
|
|
|
+#else
|
|
|
|
+ __elision_available = 0;
|
|
|
|
+ __pthread_force_elision = 0;
|
|
|
|
+ __elision_aconf.retry_try_xbegin = 0;
|
|
|
|
+#endif
|
|
|
|
}
|
|
|
|
|
|
|
|
#ifdef SHARED
|