- Disable more Intel TSX usage in rwlocks (#1146967).

Conflicts:
	glibc.spec
This commit is contained in:
Carlos O'Donell 2014-09-27 12:31:11 -04:00 committed by Siddhesh Poyarekar
parent f226d7de05
commit f8be71ca8c
2 changed files with 29 additions and 0 deletions

View File

@ -0,0 +1,22 @@
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)
{
- __elision_available = HAS_RTM;
#ifdef ENABLE_LOCK_ELISION
+ __elision_available = HAS_RTM;
__pthread_force_elision = __libc_enable_secure ? 0 : __elision_available;
-#endif
if (!HAS_RTM)
__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

View File

@ -193,6 +193,9 @@ Patch0050: %{name}-rh1124987.patch
# Fix the tst-strtod-round.c test build failure.
Patch0051: %{name}-stdlib-tst-strtod-round.c-Fix-build-on-ARM.patch
# Disable rwlock elision if --enable-lock-elision is not used.
Patch0052: %{name}-disable-rwlock-elision.patch
##############################################################################
#
# Patches from upstream
@ -565,6 +568,7 @@ package or when debugging this package.
%patch2034 -p1
%patch0050 -p1
%patch0051 -p1
%patch0052 -p1
##############################################################################
# %%prep - Additional prep required...
@ -1722,6 +1726,9 @@ rm -f *.filelist*
%endif
%changelog
* Tue Sep 30 2014 Siddhesh Poyarekar <siddhesh@redhat.com> - 2.20.90-6
- Disable more Intel TSX usage in rwlocks (#1146967).
* Fri Sep 26 2014 Carlos O'Donell <carlos@redhat.com> - 2.20.90-5
- Disable lock elision support for Intel hardware until microcode
updates can be done in early bootup (#1146967).