]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
s390/sysinfo: add and display licensed internal code identifier
authorHendrik Brueckner <brueckner@linux.vnet.ibm.com>
Wed, 24 Jan 2018 15:19:53 +0000 (16:19 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Fri, 2 Feb 2018 09:47:15 +0000 (10:47 +0100)
With z14, the store system information instruction provides an
licensed internal code identifier.  Display it in /proc/sysinfo.

For more information, see the z/Architecture Principles of Operation.
(SA22-7832-11).

Signed-off-by: Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/include/asm/sysinfo.h
arch/s390/kernel/sysinfo.c

index 25057c118d563d46f9b45a637670c1d124a88509..fe7b3f8f0791328f54e5692a07dd252358fa23b2 100644 (file)
@@ -21,7 +21,8 @@ struct sysinfo_1_1_1 {
        unsigned char :8;
        unsigned char ccr;
        unsigned char cai;
-       char reserved_0[28];
+       char reserved_0[20];
+       unsigned long lic;
        char manufacturer[16];
        char type[4];
        char reserved_1[12];
index a441cba8d165c5c034cfa5bb72628eaf885f1498..fc7e04c2195bb6f8aa519ae38fb3098e5f4d4bdd 100644 (file)
@@ -89,6 +89,8 @@ static void stsi_1_1_1(struct seq_file *m, struct sysinfo_1_1_1 *info)
        EBCASC(info->model_temp_cap, sizeof(info->model_temp_cap));
        seq_printf(m, "Manufacturer:         %-16.16s\n", info->manufacturer);
        seq_printf(m, "Type:                 %-4.4s\n", info->type);
+       if (info->lic)
+               seq_printf(m, "LIC Identifier:       %016lx\n", info->lic);
        /*
         * Sigh: the model field has been renamed with System z9
         * to model_capacity and a new model field has been added