Enable lock elision again on s390 and s390x

This commit is contained in:
Siddhesh Poyarekar 2014-09-30 22:04:19 +05:30
parent f8be71ca8c
commit 49b191c05b

View File

@ -23,6 +23,15 @@
# to provide a more optimized version of the package for your arch. # to provide a more optimized version of the package for your arch.
%define auxarches athlon alphaev6 %define auxarches athlon alphaev6
############################################################################## ##############################################################################
# Enable lock elision support for these architectures
#
# At the moment lock elision is disabled on x86_64 until there's a CPU that
# would actually benefit from enabling it. Intel released a microcode update
# to disable HLE and RTM at boot and the Fedora kernel now applies it early
# enough that keeping lock elision enabled should be harmless, but we have
# disabled it anyway as a conservative measure.
%define lock_elision_arches s390 s390x
##############################################################################
# We build a special package for Xen that includes TLS support with # We build a special package for Xen that includes TLS support with
# no negative segment offsets for use with Xen guests. This is # no negative segment offsets for use with Xen guests. This is
# purely an optimization for increased performance on those arches. # purely an optimization for increased performance on those arches.
@ -698,11 +707,6 @@ build()
build_CFLAGS="$BuildFlags -g -O3 $*" build_CFLAGS="$BuildFlags -g -O3 $*"
# Some configure checks can spuriously fail for some architectures if # Some configure checks can spuriously fail for some architectures if
# unwind info is present # unwind info is present
#
# At the moment lock elision is temporarily disabled until we work
# out how to update the microcode in early boot to prevent the cpuid
# results from becoming stale. Once this is fixed add back:
# --enable-lock-elision \
configure_CFLAGS="$build_CFLAGS -fno-asynchronous-unwind-tables" configure_CFLAGS="$build_CFLAGS -fno-asynchronous-unwind-tables"
../configure CC="$GCC" CXX="$GXX" CFLAGS="$configure_CFLAGS" \ ../configure CC="$GCC" CXX="$GXX" CFLAGS="$configure_CFLAGS" \
--prefix=%{_prefix} \ --prefix=%{_prefix} \
@ -718,6 +722,9 @@ build()
%endif %endif
%ifarch ppc64p7 %ifarch ppc64p7
--with-cpu=power7 \ --with-cpu=power7 \
%endif
%ifarch %{lock_elision_arches}
--enable-lock-elision \
%endif %endif
--disable-profile --enable-nss-crypt || --disable-profile --enable-nss-crypt ||
{ cat config.log; false; } { cat config.log; false; }
@ -1728,6 +1735,7 @@ rm -f *.filelist*
%changelog %changelog
* Tue Sep 30 2014 Siddhesh Poyarekar <siddhesh@redhat.com> - 2.20.90-6 * Tue Sep 30 2014 Siddhesh Poyarekar <siddhesh@redhat.com> - 2.20.90-6
- Disable more Intel TSX usage in rwlocks (#1146967). - Disable more Intel TSX usage in rwlocks (#1146967).
- Enable lock elision again on s390 and s390x.
* Fri Sep 26 2014 Carlos O'Donell <carlos@redhat.com> - 2.20.90-5 * Fri Sep 26 2014 Carlos O'Donell <carlos@redhat.com> - 2.20.90-5
- Disable lock elision support for Intel hardware until microcode - Disable lock elision support for Intel hardware until microcode