[openssl] master update

patrick.steuer at de.ibm.com patrick.steuer at de.ibm.com
Mon Jun 22 00:41:22 UTC 2020


The branch master has been updated
       via  b55a0b0ff209f7004c16e1bf69dd557167878fd6 (commit)
      from  13da2e61bf16f932a8d80bc934605d61556f3e0e (commit)


- Log -----------------------------------------------------------------
commit b55a0b0ff209f7004c16e1bf69dd557167878fd6
Author: Patrick Steuer <patrick.steuer at de.ibm.com>
Date:   Sat Jun 20 17:59:02 2020 +0200

    Print CPUINFO also for s390 processors
    
    Signed-off-by: Patrick Steuer <patrick.steuer at de.ibm.com>
    
    Reviewed-by: Tim Hudson <tjh at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/12216)

-----------------------------------------------------------------------

Summary of changes:
 crypto/info.c | 44 +++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 43 insertions(+), 1 deletion(-)

diff --git a/crypto/info.c b/crypto/info.c
index 968184fceb..a106e8c885 100644
--- a/crypto/info.c
+++ b/crypto/info.c
@@ -17,6 +17,12 @@
 
 #if defined(__arm__) || defined(__arm) || defined(__aarch64__)
 # include "arm_arch.h"
+# define CPU_INFO_STR_LEN 128
+#elif defined(__s390__) || defined(__s390x__)
+# include "s390x_arch.h"
+# define CPU_INFO_STR_LEN 2048
+#else
+# define CPU_INFO_STR_LEN 128
 #endif
 
 /* extern declaration to avoid warning */
@@ -24,7 +30,7 @@ extern char ossl_cpu_info_str[];
 
 static char *seed_sources = NULL;
 
-char ossl_cpu_info_str[128] = "";
+char ossl_cpu_info_str[CPU_INFO_STR_LEN] = "";
 #define CPUINFO_PREFIX "CPUINFO: "
 
 static CRYPTO_ONCE init_info = CRYPTO_ONCE_STATIC_INIT;
@@ -56,6 +62,42 @@ DEFINE_RUN_ONCE_STATIC(init_info_strings)
         BIO_snprintf(ossl_cpu_info_str + strlen(ossl_cpu_info_str),
                      sizeof(ossl_cpu_info_str) - strlen(ossl_cpu_info_str),
                      " env:%s", env);
+# elif defined(__s390__) || defined(__s390x__)
+    const char *env;
+
+    BIO_snprintf(ossl_cpu_info_str, sizeof(ossl_cpu_info_str),
+                 CPUINFO_PREFIX "OPENSSL_s390xcap="
+                 "stfle:0x%llx:0x%llx:0x%llx:0x%llx:"
+                 "kimd:0x%llx:0x%llx:"
+                 "klmd:0x%llx:0x%llx:"
+                 "km:0x%llx:0x%llx:"
+                 "kmc:0x%llx:0x%llx:"
+                 "kmac:0x%llx:0x%llx:"
+                 "kmctr:0x%llx:0x%llx:"
+                 "kmo:0x%llx:0x%llx:"
+                 "kmf:0x%llx:0x%llx:"
+                 "prno:0x%llx:0x%llx:"
+                 "kma:0x%llx:0x%llx:"
+                 "pcc:0x%llx:0x%llx:"
+                 "kdsa:0x%llx:0x%llx",
+                 OPENSSL_s390xcap_P.stfle[0], OPENSSL_s390xcap_P.stfle[1],
+                 OPENSSL_s390xcap_P.stfle[2], OPENSSL_s390xcap_P.stfle[3],
+                 OPENSSL_s390xcap_P.kimd[0], OPENSSL_s390xcap_P.kimd[1],
+                 OPENSSL_s390xcap_P.klmd[0], OPENSSL_s390xcap_P.klmd[1],
+                 OPENSSL_s390xcap_P.km[0], OPENSSL_s390xcap_P.km[1],
+                 OPENSSL_s390xcap_P.kmc[0], OPENSSL_s390xcap_P.kmc[1],
+                 OPENSSL_s390xcap_P.kmac[0], OPENSSL_s390xcap_P.kmac[1],
+                 OPENSSL_s390xcap_P.kmctr[0], OPENSSL_s390xcap_P.kmctr[1],
+                 OPENSSL_s390xcap_P.kmo[0], OPENSSL_s390xcap_P.kmo[1],
+                 OPENSSL_s390xcap_P.kmf[0], OPENSSL_s390xcap_P.kmf[1],
+                 OPENSSL_s390xcap_P.prno[0], OPENSSL_s390xcap_P.prno[1],
+                 OPENSSL_s390xcap_P.kma[0], OPENSSL_s390xcap_P.kma[1],
+                 OPENSSL_s390xcap_P.pcc[0], OPENSSL_s390xcap_P.pcc[1],
+                 OPENSSL_s390xcap_P.kdsa[0], OPENSSL_s390xcap_P.kdsa[1]);
+    if ((env = getenv("OPENSSL_s390xcap")) != NULL)
+        BIO_snprintf(ossl_cpu_info_str + strlen(ossl_cpu_info_str),
+                     sizeof(ossl_cpu_info_str) - strlen(ossl_cpu_info_str),
+                     " env:%s", env);
 # endif
 #endif
 


More information about the openssl-commits mailing list