This has gone out of sync over time. Introduce a simplistic mechanism to
hopefully keep things in sync going forward.
Also limit the array index to just the "basic exit reason" part, which is
what the pseudo-enumeration covers.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
else
HVMTRACE_ND(VMEXIT, 0, 1/*cycles*/, exit_reason, regs->eip);
- perfc_incra(vmexits, exit_reason);
+ perfc_incra(vmexits, (uint16_t)exit_reason);
/* Handle the interrupt we missed before allowing any more in. */
switch ( (uint16_t)exit_reason )
#define EXIT_REASON_PML_FULL 62
#define EXIT_REASON_XSAVES 63
#define EXIT_REASON_XRSTORS 64
+/* Remember to also update VMX_PERF_EXIT_REASON_SIZE! */
/*
* Interruption-information format
#ifdef CONFIG_HVM
-#define VMX_PERF_EXIT_REASON_SIZE 56
+#define VMX_PERF_EXIT_REASON_SIZE 65
#define VMX_PERF_VECTOR_SIZE 0x20
PERFCOUNTER_ARRAY(vmexits, "vmexits", VMX_PERF_EXIT_REASON_SIZE)
PERFCOUNTER_ARRAY(cause_vector, "cause vector", VMX_PERF_VECTOR_SIZE)