From d9f60a924c03761081b99145a51bc85ee54efcdc Mon Sep 17 00:00:00 2001 From: Andrew Cooper Date: Fri, 8 Oct 2021 10:47:07 +0100 Subject: [PATCH] x86/traps: Collect PERFC_exceptions stats for IST vectors too This causes NMIs, #DB and #MC to be counted, rather than being reported as 0. Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich --- xen/arch/x86/x86_64/entry.S | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/xen/arch/x86/x86_64/entry.S b/xen/arch/x86/x86_64/entry.S index d5998acf88..3caa565476 100644 --- a/xen/arch/x86/x86_64/entry.S +++ b/xen/arch/x86/x86_64/entry.S @@ -1005,6 +1005,13 @@ handle_ist_exception: #endif movq %rsp,%rdi movzbl UREGS_entry_vector(%rsp),%eax + +#ifdef CONFIG_PERF_COUNTERS + lea per_cpu__perfcounters(%rip), %rcx + add STACK_CPUINFO_FIELD(per_cpu_offset)(%r14), %rcx + incl ASM_PERFC_exceptions * 4(%rcx, %rax, 4) +#endif + leaq exception_table(%rip),%rdx mov (%rdx, %rax, 8), %rdx INDIRECT_CALL %rdx -- 2.30.2