You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
89 lines
3.1 KiB
89 lines
3.1 KiB
9 months ago
|
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
|
||
|
--- a/sysdeps/s390/dl-procinfo.c
|
||
|
+++ b/sysdeps/s390/dl-procinfo.c
|
||
|
@@ -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
|
||
|
--- a/sysdeps/s390/dl-procinfo.h
|
||
|
+++ b/sysdeps/s390/dl-procinfo.h
|
||
|
@@ -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
|
||
|
--- a/sysdeps/unix/sysv/linux/s390/bits/hwcap.h
|
||
|
+++ b/sysdeps/unix/sysv/linux/s390/bits/hwcap.h
|
||
|
@@ -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
|
||
|
|