| From f2e06656d04a9fcb0603802a4f8ce7aa3a1f055e Mon Sep 17 00:00:00 2001 |
| From: Stefan Liebler <stli@linux.ibm.com> |
| Date: Tue, 5 Oct 2021 16:14:10 +0200 |
| Subject: [PATCH] S390: Add PCI_MIO and SIE HWCAPs |
| |
| Both new HWCAPs were introduced in these kernel commits: |
| - 7e8403ecaf884f307b627f3c371475913dd29292 |
| "s390: add HWCAP_S390_PCI_MIO to ELF hwcaps" |
| - 7e82523f2583e9813e4109df3656707162541297 |
| "s390/hwcaps: make sie capability regular hwcap" |
| |
| Also note that the kernel commit 511ad531afd4090625def4d9aba1f5227bd44b8e |
| "s390/hwcaps: shorten HWCAP defines" has shortened the prefix of the macros |
| from "HWCAP_S390_" to "HWCAP_". For compatibility reasons, we do not |
| change the prefix in public glibc header file. |
| |
| sysdeps/s390/dl-procinfo.c | 4 ++-- |
| sysdeps/s390/dl-procinfo.h | 4 +++- |
| sysdeps/unix/sysv/linux/s390/bits/hwcap.h | 7 +++++++ |
| 3 files changed, 12 insertions(+), 3 deletions(-) |
| |
| diff --git a/sysdeps/s390/dl-procinfo.c b/sysdeps/s390/dl-procinfo.c |
| index 7314c31b15..97be34fe9d 100644 |
| |
| |
| @@ -45,13 +45,13 @@ |
| #if !defined PROCINFO_DECL && defined SHARED |
| ._dl_s390_cap_flags |
| #else |
| -PROCINFO_CLASS const char _dl_s390_cap_flags[21][9] |
| +PROCINFO_CLASS const char _dl_s390_cap_flags[23][9] |
| #endif |
| #ifndef PROCINFO_DECL |
| = { |
| "esan3", "zarch", "stfle", "msa", "ldisp", "eimm", "dfp", "edat", "etf3eh", |
| "highgprs", "te", "vx", "vxd", "vxe", "gs", "vxe2", "vxp", "sort", "dflt", |
| - "vxp2", "nnpa" |
| + "vxp2", "nnpa", "pcimio", "sie" |
| } |
| #endif |
| #if !defined SHARED || defined PROCINFO_DECL |
| diff --git a/sysdeps/s390/dl-procinfo.h b/sysdeps/s390/dl-procinfo.h |
| index 2502dd2604..d9a3b264ff 100644 |
| |
| |
| @@ -20,7 +20,7 @@ |
| #define _DL_PROCINFO_H 1 |
| #include <ldsodefs.h> |
| |
| -#define _DL_HWCAP_COUNT 21 |
| +#define _DL_HWCAP_COUNT 23 |
| |
| #define _DL_PLATFORMS_COUNT 10 |
| |
| @@ -62,6 +62,8 @@ enum |
| HWCAP_S390_DFLT = 1 << 18, |
| HWCAP_S390_VXRS_PDE2 = 1 << 19, |
| HWCAP_S390_NNPA = 1 << 20, |
| + HWCAP_S390_PCI_MIO = 1 << 21, |
| + HWCAP_S390_SIE = 1 << 22, |
| }; |
| |
| #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 e9bd3684db..00e73a3e3b 100644 |
| |
| |
| @@ -22,6 +22,11 @@ |
| |
| /* |
| * The following must match the kernels asm/elf.h. |
| + * Note: The kernel commit 511ad531afd4090625def4d9aba1f5227bd44b8e |
| + * "s390/hwcaps: shorten HWCAP defines" has shortened the prefix of the macros |
| + * from "HWCAP_S390_" to "HWCAP_". For compatibility reasons, we do not |
| + * change the prefix in public glibc header file. |
| + * |
| * Note that these are *not* the same as the STORE FACILITY LIST bits. |
| */ |
| #define HWCAP_S390_ESAN3 1 |
| @@ -48,3 +53,5 @@ |
| #define HWCAP_S390_DFLT 262144 |
| #define HWCAP_S390_VXRS_PDE2 524288 |
| #define HWCAP_S390_NNPA 1048576 |
| +#define HWCAP_S390_PCI_MIO 2097152 |
| +#define HWCAP_S390_SIE 4194304 |
| -- |
| 2.31.1 |
| |