]> xenbits.xensource.com Git - people/royger/xen.git/commitdiff
SVM: sync VM-exit perf counters with known VM-exit reasons
authorJan Beulich <jbeulich@suse.com>
Thu, 24 Feb 2022 10:17:26 +0000 (11:17 +0100)
committerJan Beulich <jbeulich@suse.com>
Thu, 24 Feb 2022 10:17:26 +0000 (11:17 +0100)
This has gone out of sync over time, resulting in NPF and XSETBV exits
incrementing the same counter. Introduce a simplistic mechanism to
hopefully keep things in better sync going forward.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
xen/arch/x86/include/asm/hvm/svm/vmcb.h
xen/arch/x86/include/asm/perfc_defn.h

index ed7cebea7174141c94fb6e50522d4264a9896040..e87728fa81cd26fe014dd3eb47d622105063760f 100644 (file)
@@ -302,7 +302,9 @@ enum VMEXIT_EXITCODE
     VMEXIT_MWAIT_CONDITIONAL= 140, /* 0x8c */
     VMEXIT_XSETBV           = 141, /* 0x8d */
     VMEXIT_RDPRU            = 142, /* 0x8e */
+    /* Remember to also update VMEXIT_NPF_PERFC! */
     VMEXIT_NPF              = 1024, /* 0x400, nested paging fault */
+    /* Remember to also update SVM_PERF_EXIT_REASON_SIZE! */
     VMEXIT_INVALID          =  -1
 };
 
index 896c5397f5b1c229e4d10ecf52301c26ec5c7759..8a313295375031bc2b99b65ba1f74f1b4419e06c 100644 (file)
@@ -11,8 +11,8 @@ PERFCOUNTER_ARRAY(exceptions,           "exceptions", 32)
 PERFCOUNTER_ARRAY(vmexits,              "vmexits", VMX_PERF_EXIT_REASON_SIZE)
 PERFCOUNTER_ARRAY(cause_vector,         "cause vector", VMX_PERF_VECTOR_SIZE)
 
-#define VMEXIT_NPF_PERFC 141
-#define SVM_PERF_EXIT_REASON_SIZE (1+141)
+#define VMEXIT_NPF_PERFC 143
+#define SVM_PERF_EXIT_REASON_SIZE (VMEXIT_NPF_PERFC + 1)
 PERFCOUNTER_ARRAY(svmexits,             "SVMexits", SVM_PERF_EXIT_REASON_SIZE)
 
 #endif /* CONFIG_HVM */