[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <b1238d2e-2a15-1f8c-1349-e2b26d543c62@redhat.com>
Date: Mon, 7 Nov 2022 16:45:26 +0100
From: Paolo Bonzini <pbonzini@...hat.com>
To: Rong Tao <rtoax@...mail.com>
Cc: Rong Tao <rongtao@...tc.cn>,
Dmitry Klochkov <kdmitry556@...il.com>,
"open list:KERNEL VIRTUAL MACHINE (KVM)" <kvm@...r.kernel.org>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] tools/kvm_stat: update exit reasons for
vmx/svm/aarch64/userspace
On 11/7/22 15:52, Rong Tao wrote:
> From: Rong Tao <rongtao@...tc.cn>
>
> Update EXIT_REASONS from source, including VMX_EXIT_REASONS,
> SVM_EXIT_REASONS, AARCH64_EXIT_REASONS, USERSPACE_EXIT_REASONS.
>
> Signed-off-by: Rong Tao <rongtao@...tc.cn>
> ---
> tools/kvm/kvm_stat/kvm_stat | 96 +++++++++++++++++++++++++++++++------
> 1 file changed, 82 insertions(+), 14 deletions(-)
>
> diff --git a/tools/kvm/kvm_stat/kvm_stat b/tools/kvm/kvm_stat/kvm_stat
> index 9c366b3a676d..a34b781a3ce8 100755
> --- a/tools/kvm/kvm_stat/kvm_stat
> +++ b/tools/kvm/kvm_stat/kvm_stat
> @@ -41,11 +41,14 @@ VMX_EXIT_REASONS = {
> 'EXCEPTION_NMI': 0,
> 'EXTERNAL_INTERRUPT': 1,
> 'TRIPLE_FAULT': 2,
> - 'PENDING_INTERRUPT': 7,
> + 'INIT_SIGNAL': 3,
> + 'SIPI_SIGNAL': 4,
> + 'INTERRUPT_WINDOW': 7,
> 'NMI_WINDOW': 8,
> 'TASK_SWITCH': 9,
> 'CPUID': 10,
> 'HLT': 12,
> + 'INVD': 13,
> 'INVLPG': 14,
> 'RDPMC': 15,
> 'RDTSC': 16,
> @@ -65,26 +68,48 @@ VMX_EXIT_REASONS = {
> 'MSR_READ': 31,
> 'MSR_WRITE': 32,
> 'INVALID_STATE': 33,
> + 'MSR_LOAD_FAIL': 34,
> 'MWAIT_INSTRUCTION': 36,
> + 'MONITOR_TRAP_FLAG': 37,
> 'MONITOR_INSTRUCTION': 39,
> 'PAUSE_INSTRUCTION': 40,
> 'MCE_DURING_VMENTRY': 41,
> 'TPR_BELOW_THRESHOLD': 43,
> 'APIC_ACCESS': 44,
> + 'EOI_INDUCED': 45,
> + 'GDTR_IDTR': 46,
> + 'LDTR_TR': 47,
> 'EPT_VIOLATION': 48,
> 'EPT_MISCONFIG': 49,
> + 'INVEPT': 50,
> + 'RDTSCP': 51,
> + 'PREEMPTION_TIMER': 52,
> + 'INVVPID': 53,
> 'WBINVD': 54,
> 'XSETBV': 55,
> 'APIC_WRITE': 56,
> + 'RDRAND': 57,
> 'INVPCID': 58,
> + 'VMFUNC': 59,
> + 'ENCLS': 60,
> + 'RDSEED': 61,
> + 'PML_FULL': 62,
> + 'XSAVES': 63,
> + 'XRSTORS': 64,
> + 'UMWAIT': 67,
> + 'TPAUSE': 68,
> + 'BUS_LOCK': 74,
> + 'NOTIFY': 75,
> }
>
> SVM_EXIT_REASONS = {
> 'READ_CR0': 0x000,
> + 'READ_CR2': 0x002,
> 'READ_CR3': 0x003,
> 'READ_CR4': 0x004,
> 'READ_CR8': 0x008,
> 'WRITE_CR0': 0x010,
> + 'WRITE_CR2': 0x012,
> 'WRITE_CR3': 0x013,
> 'WRITE_CR4': 0x014,
> 'WRITE_CR8': 0x018,
> @@ -105,6 +130,7 @@ SVM_EXIT_REASONS = {
> 'WRITE_DR6': 0x036,
> 'WRITE_DR7': 0x037,
> 'EXCP_BASE': 0x040,
> + 'LAST_EXCP': 0x05f,
> 'INTR': 0x060,
> 'NMI': 0x061,
> 'SMI': 0x062,
> @@ -151,21 +177,45 @@ SVM_EXIT_REASONS = {
> 'MWAIT': 0x08b,
> 'MWAIT_COND': 0x08c,
> 'XSETBV': 0x08d,
> + 'RDPRU': 0x08e,
> + 'EFER_WRITE_TRAP': 0x08f,
> + 'CR0_WRITE_TRAP': 0x090,
> + 'CR1_WRITE_TRAP': 0x091,
> + 'CR2_WRITE_TRAP': 0x092,
> + 'CR3_WRITE_TRAP': 0x093,
> + 'CR4_WRITE_TRAP': 0x094,
> + 'CR5_WRITE_TRAP': 0x095,
> + 'CR6_WRITE_TRAP': 0x096,
> + 'CR7_WRITE_TRAP': 0x097,
> + 'CR8_WRITE_TRAP': 0x098,
> + 'CR9_WRITE_TRAP': 0x099,
> + 'CR10_WRITE_TRAP': 0x09a,
> + 'CR11_WRITE_TRAP': 0x09b,
> + 'CR12_WRITE_TRAP': 0x09c,
> + 'CR13_WRITE_TRAP': 0x09d,
> + 'CR14_WRITE_TRAP': 0x09e,
> + 'CR15_WRITE_TRAP': 0x09f,
> + 'INVPCID': 0x0a2,
> 'NPF': 0x400,
> + 'AVIC_INCOMPLETE_IPI': 0x401,
> + 'AVIC_UNACCELERATED_ACCESS': 0x402,
> + 'VMGEXIT': 0x403,
> }
>
> -# EC definition of HSR (from arch/arm64/include/asm/kvm_arm.h)
> +# EC definition of HSR (from arch/arm64/include/asm/esr.h)
> AARCH64_EXIT_REASONS = {
> 'UNKNOWN': 0x00,
> - 'WFI': 0x01,
> + 'WFx': 0x01,
> 'CP15_32': 0x03,
> 'CP15_64': 0x04,
> 'CP14_MR': 0x05,
> 'CP14_LS': 0x06,
> 'FP_ASIMD': 0x07,
> 'CP10_ID': 0x08,
> + 'PAC': 0x09,
> 'CP14_64': 0x0C,
> - 'ILL_ISS': 0x0E,
> + 'BTI': 0x0D,
> + 'ILL': 0x0E,
> 'SVC32': 0x11,
> 'HVC32': 0x12,
> 'SMC32': 0x13,
> @@ -173,21 +223,26 @@ AARCH64_EXIT_REASONS = {
> 'HVC64': 0x16,
> 'SMC64': 0x17,
> 'SYS64': 0x18,
> - 'IABT': 0x20,
> - 'IABT_HYP': 0x21,
> + 'SVE': 0x19,
> + 'ERET': 0x1A,
> + 'FPAC': 0x1C,
> + 'SME': 0x1D,
> + 'IMP_DEF': 0x1F,
> + 'IABT_LOW': 0x20,
> + 'IABT_CUR': 0x21,
> 'PC_ALIGN': 0x22,
> - 'DABT': 0x24,
> - 'DABT_HYP': 0x25,
> + 'DABT_LOW': 0x24,
> + 'DABT_CUR': 0x25,
> 'SP_ALIGN': 0x26,
> 'FP_EXC32': 0x28,
> 'FP_EXC64': 0x2C,
> 'SERROR': 0x2F,
> - 'BREAKPT': 0x30,
> - 'BREAKPT_HYP': 0x31,
> - 'SOFTSTP': 0x32,
> - 'SOFTSTP_HYP': 0x33,
> - 'WATCHPT': 0x34,
> - 'WATCHPT_HYP': 0x35,
> + 'BREAKPT_LOW': 0x30,
> + 'BREAKPT_CUR': 0x31,
> + 'SOFTSTP_LOW': 0x32,
> + 'SOFTSTP_CUR': 0x33,
> + 'WATCHPT_LOW': 0x34,
> + 'WATCHPT_CUR': 0x35,
> 'BKPT32': 0x38,
> 'VECTOR32': 0x3A,
> 'BRK64': 0x3C,
> @@ -220,6 +275,19 @@ USERSPACE_EXIT_REASONS = {
> 'S390_TSCH': 22,
> 'EPR': 23,
> 'SYSTEM_EVENT': 24,
> + 'S390_STSI': 25,
> + 'IOAPIC_EOI': 26,
> + 'HYPERV': 27,
> + 'ARM_NISV': 28,
> + 'X86_RDMSR': 29,
> + 'X86_WRMSR': 30,
> + 'DIRTY_RING_FULL': 31,
> + 'AP_RESET_HOLD': 32,
> + 'X86_BUS_LOCK': 33,
> + 'XEN': 34,
> + 'RISCV_SBI': 35,
> + 'RISCV_CSR': 36,
> + 'NOTIFY': 37,
> }
>
> IOCTL_NUMBERS = {
Queued, thanks.
Paolo
Powered by blists - more mailing lists