In kvm_stat we have a dictionary of exit reasons for s390. Firstly these
are not s390 specific, they are the generic exit reasons. So rename the
dictionary to reflect that.

Secondly, the values are defined using hex, but in the kernel header
they are decimal. That means values above 9 in kvm_stat are incorrect.

As far as I can tell this does not matter in practice because s390 does
not define a kvm_exit trace point.

While we're there, fix the whitespace to match the rest of the file.

Signed-off-by: Michael Ellerman <m...@ellerman.id.au>
---
 scripts/kvm/kvm_stat | 49 +++++++++++++++++++++++++++----------------------
 1 file changed, 27 insertions(+), 22 deletions(-)

diff --git a/scripts/kvm/kvm_stat b/scripts/kvm/kvm_stat
index 2a788bc..fe2eae3 100755
--- a/scripts/kvm/kvm_stat
+++ b/scripts/kvm/kvm_stat
@@ -141,33 +141,38 @@ svm_exit_reasons = {
     0x400: 'NPF',
 }
 
-s390_exit_reasons = {
-       0x000: 'UNKNOWN',
-       0x001: 'EXCEPTION',
-       0x002: 'IO',
-       0x003: 'HYPERCALL',
-       0x004: 'DEBUG',
-       0x005: 'HLT',
-       0x006: 'MMIO',
-       0x007: 'IRQ_WINDOW_OPEN',
-       0x008: 'SHUTDOWN',
-       0x009: 'FAIL_ENTRY',
-       0x010: 'INTR',
-       0x011: 'SET_TPR',
-       0x012: 'TPR_ACCESS',
-       0x013: 'S390_SIEIC',
-       0x014: 'S390_RESET',
-       0x015: 'DCR',
-       0x016: 'NMI',
-       0x017: 'INTERNAL_ERROR',
-       0x018: 'OSI',
-       0x019: 'PAPR_HCALL',
+# From include/uapi/linux/kvm.h, KVM_EXIT_xxx
+generic_exit_reasons = {
+     0: 'UNKNOWN',
+     1: 'EXCEPTION',
+     2: 'IO',
+     3: 'HYPERCALL',
+     4: 'DEBUG',
+     5: 'HLT',
+     6: 'MMIO',
+     7: 'IRQ_WINDOW_OPEN',
+     8: 'SHUTDOWN',
+     9: 'FAIL_ENTRY',
+    10: 'INTR',
+    11: 'SET_TPR',
+    12: 'TPR_ACCESS',
+    13: 'S390_SIEIC',
+    14: 'S390_RESET',
+    15: 'DCR',
+    16: 'NMI',
+    17: 'INTERNAL_ERROR',
+    18: 'OSI',
+    19: 'PAPR_HCALL',
+    20: 'S390_UCONTROL',
+    21: 'WATCHDOG',
+    22: 'S390_TSCH',
+    23: 'EPR',
 }
 
 vendor_exit_reasons = {
     'vmx': vmx_exit_reasons,
     'svm': svm_exit_reasons,
-    'IBM/S390': s390_exit_reasons,
+    'IBM/S390': generic_exit_reasons,
 }
 
 syscall_numbers = {
-- 
1.9.1


Reply via email to