- Add hwcaps for transactional execution on s390[x] (#804768)

This commit is contained in:
Jeff Law 2012-11-08 09:03:54 -07:00
parent 4b3be4efa1
commit ba20a858e0
2 changed files with 64 additions and 1 deletions

58
glibc-rh804768-2.patch Normal file
View File

@ -0,0 +1,58 @@
2012-11-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* sysdeps/s390/dl-procinfo.c (_dl_s390_cap_flags): Add "te".
* sysdeps/s390/dl-procinfo.h (HWCAP_S390_TE): Add enum value.
* sysdeps/unix/sysv/linux/s390/hwcap.h (HWCAP_S390_TE): Add macro
definition.
diff --git a/sysdeps/s390/dl-procinfo.c b/sysdeps/s390/dl-procinfo.c
index a22d45b..9590146 100644
--- a/sysdeps/s390/dl-procinfo.c
+++ b/sysdeps/s390/dl-procinfo.c
@@ -46,11 +46,11 @@
#if !defined PROCINFO_DECL && defined SHARED
._dl_s390_cap_flags
#else
-PROCINFO_CLASS const char _dl_s390_cap_flags[10][9]
+PROCINFO_CLASS const char _dl_s390_cap_flags[11][9]
#endif
#ifndef PROCINFO_DECL
= {
- "esan3", "zarch", "stfle", "msa", "ldisp", "eimm", "dfp", "edat", "etf3eh", "highgprs"
+ "esan3", "zarch", "stfle", "msa", "ldisp", "eimm", "dfp", "edat", "etf3eh", "highgprs", "te"
}
#endif
#if !defined SHARED || defined PROCINFO_DECL
diff --git a/sysdeps/s390/dl-procinfo.h b/sysdeps/s390/dl-procinfo.h
index 7221b53..97dcf07 100644
--- a/sysdeps/s390/dl-procinfo.h
+++ b/sysdeps/s390/dl-procinfo.h
@@ -33,7 +33,9 @@
/* Hardware capablity bit numbers are derived directly from the
facility indications as stored by the "store facility list" (STFL)
- instruction. */
+ instruction.
+ highgprs is an alien in that list. It describes a *kernel*
+ capability. */
enum
{
@@ -47,6 +49,7 @@ enum
HWCAP_S390_HPAGE = 1 << 7,
HWCAP_S390_ETF3EH = 1 << 8,
HWCAP_S390_HIGH_GPRS = 1 << 9,
+ HWCAP_S390_TE = 1 << 10,
};
#define HWCAP_IMPORTANT (HWCAP_S390_ZARCH | HWCAP_S390_LDISP \
diff --git a/sysdeps/unix/sysv/linux/s390/bits/hwcap.h b/sysdeps/unix/sysv/linux/s390/bits/hwcap.h
index 7f03ffe..59d68b0 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/hwcap.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/hwcap.h
@@ -34,3 +34,4 @@
#define HWCAP_S390_HPAGE 128
#define HWCAP_S390_ETF3EH 256
#define HWCAP_S390_HIGH_GPRS 512
+#define HWCAP_S390_TE 1024

View File

@ -28,7 +28,7 @@
Summary: The GNU libc libraries
Name: glibc
Version: %{glibcversion}
Release: 23%{?dist}
Release: 24%{?dist}
# GPLv2+ is used in a bunch of programs, LGPLv2+ is used for libraries.
# Things that are linked directly into dynamically linked programs
# and shared libraries (e.g. crt files, lib*_nonshared.a) have an additional
@ -121,6 +121,7 @@ Patch1041: %{name}-rh848748.patch
Patch1042: %{name}-rh865520.patch
Patch1045: %{name}-rh852445.patch
Patch1047: %{name}-rh804768.patch
Patch1048: %{name}-rh804768-2.patch
#
# Patches submitted, but not yet approved upstream.
@ -461,6 +462,7 @@ rm -rf %{glibcportsdir}
%patch1045 -p1
%patch0046 -p1
%patch1047 -p1
%patch1048 -p1
# On powerpc32, hp timing is only available in power4/power6
# libs, not in base, so pre-power4 dynamic linker is incompatible
@ -1267,6 +1269,9 @@ rm -f *.filelist*
%endif
%changelog
* Thu Nov 8 2012 Jeff Law <law@redhat.com> - 2.16-24
- Add hwcaps for transactional execution on s390[x] (#804768)
* Wed Nov 7 2012 Jeff Law <law@redhat.com> - 2.16-23
- Sync s390[x] auxv capabilities and archs with kernel (#804768)