]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - arch/s390/kernel/sysinfo.c
Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm
[karo-tx-linux.git] / arch / s390 / kernel / sysinfo.c
index 85565f1ff4743abbf546d67eb35ff2cb10e09e91..99babea026ca09e3c4c9c61a2871f09b0369fcb9 100644 (file)
@@ -204,6 +204,33 @@ static void stsi_2_2_2(struct seq_file *m, struct sysinfo_2_2_2 *info)
        }
 }
 
+static void print_ext_name(struct seq_file *m, int lvl,
+                          struct sysinfo_3_2_2 *info)
+{
+       if (info->vm[lvl].ext_name_encoding == 0)
+               return;
+       if (info->ext_names[lvl][0] == 0)
+               return;
+       switch (info->vm[lvl].ext_name_encoding) {
+       case 1: /* EBCDIC */
+               EBCASC(info->ext_names[lvl], sizeof(info->ext_names[lvl]));
+               break;
+       case 2: /* UTF-8 */
+               break;
+       default:
+               return;
+       }
+       seq_printf(m, "VM%02d Extended Name:   %-.256s\n", lvl,
+                  info->ext_names[lvl]);
+}
+
+static void print_uuid(struct seq_file *m, int i, struct sysinfo_3_2_2 *info)
+{
+       if (!memcmp(&info->vm[i].uuid, &NULL_UUID_BE, sizeof(uuid_be)))
+               return;
+       seq_printf(m, "VM%02d UUID:            %pUb\n", i, &info->vm[i].uuid);
+}
+
 static void stsi_3_2_2(struct seq_file *m, struct sysinfo_3_2_2 *info)
 {
        int i;
@@ -221,6 +248,8 @@ static void stsi_3_2_2(struct seq_file *m, struct sysinfo_3_2_2 *info)
                seq_printf(m, "VM%02d CPUs Configured: %d\n", i, info->vm[i].cpus_configured);
                seq_printf(m, "VM%02d CPUs Standby:    %d\n", i, info->vm[i].cpus_standby);
                seq_printf(m, "VM%02d CPUs Reserved:   %d\n", i, info->vm[i].cpus_reserved);
+               print_ext_name(m, i, info);
+               print_uuid(m, i, info);
        }
 }