Received: by 2002:a6b:fb09:0:0:0:0:0 with SMTP id h9csp1846795iog; Tue, 14 Jun 2022 14:56:46 -0700 (PDT) X-Google-Smtp-Source: AGRyM1vNIY/+vJjvPnCE7/DyM6bpdK8Te5ANaP3yEH9fXT5tT6IQJmxyXIAq7rVTnSDsu7fx7l9J X-Received: by 2002:a50:ed12:0:b0:42d:d1d3:493c with SMTP id j18-20020a50ed12000000b0042dd1d3493cmr8517798eds.174.1655243806434; Tue, 14 Jun 2022 14:56:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1655243806; cv=none; d=google.com; s=arc-20160816; b=iipXoVe9ylmuHh9Vv4PPNOmKtWMX16lW1d3yADZbkoAA1QwduqXfIrqpFenm/PV7rw 5MNOv8KZjVSVz99sJTMBc9rVngY2uJgSFxcWs1/kLHV9oB0RkxyxQy1/dGB1xgceaXX2 iGibs7jxRK0L0gX7WaXtcWQTPEr/KbApPi6NM4WWSLQECoS4RMR6MFUSOt1HhUtEXBHD bCBRQuViKy/TEE/I59sgO+sY88LVYiCc1P7sj6rsCIWesZhzawC7qCU8vivNSCaT55kC Gb852nx96va9K9jI2bzNxZXuUIVwVystfHwLOBrZ1oKw1AKNYvnV133hf5vb9bT64aJ0 jFrA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:references:mime-version :message-id:in-reply-to:date:reply-to:dkim-signature; bh=9yzgzTlgrscZUiJ1Gi4IjzGYJkO0pcdsrR04YqBf76E=; b=g1IzdJ0jDcQ86ZqAlWoB/hze/JtTpc1o5Z7O96grV45oO1td+uE7DmgQ/6xzJ+AvkS ty0mKohIKz/1UhuMog7bwAl6HyhUFldnX9ogMPA4uOF8XQZMBIKi5kcTNAaMl3KV953l nrLwkDpFEA7PHYo5jN0zEufGKkqM8/39byU1f54i6sl36x98pMMjcjkAMyEsQ0nCt1ij XsnPy4letjmYQOTle7DdqshMfLldfG6VHXuOQSkOzZmV9sNYYCK2zv09cyP6TuRdPcKv 9yhML2AOYxghtrDUghUIHU0IWMdTh+QDUTbKQJYKMwCXBUsXIUeRGI6Q2Wx0UGx6CGLS 5pVg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=rZ1uyAwv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id mp22-20020a1709071b1600b00711f377bfb0si13398393ejc.778.2022.06.14.14.56.20; Tue, 14 Jun 2022 14:56:46 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=rZ1uyAwv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1358470AbiFNUtw (ORCPT + 99 others); Tue, 14 Jun 2022 16:49:52 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37396 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1358274AbiFNUst (ORCPT ); Tue, 14 Jun 2022 16:48:49 -0400 Received: from mail-pg1-x549.google.com (mail-pg1-x549.google.com [IPv6:2607:f8b0:4864:20::549]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0276C5000E for ; Tue, 14 Jun 2022 13:48:22 -0700 (PDT) Received: by mail-pg1-x549.google.com with SMTP id e18-20020a656492000000b003fa4033f9a7so5487548pgv.17 for ; Tue, 14 Jun 2022 13:48:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=reply-to:date:in-reply-to:message-id:mime-version:references :subject:from:to:cc; bh=9yzgzTlgrscZUiJ1Gi4IjzGYJkO0pcdsrR04YqBf76E=; b=rZ1uyAwvL/OQ5zJbPDu3GtwjHiMrA52vKQUQZyHFOqhPmh4K6JC4Opbx/1JqZurU4n R3IQkslvvfIOAaK0wE+4oU2y2EKWWd84LJKm1Vg8qIh5mX9UNmJMty6s9E1Qd/jZd4QG JnvrxYXToV1xhxgeIr5zxxbUjTvH4v2UnD22TGWVFrCFwNnUVVjLOgzqh5lbdOSucPDq zzDQwzN/ZRRdcBeqTnbMmUCKwiPGOQQwFfYh67TMTulpaJl/dgqzXkdbknHNdy1fqUet cOpiH/8yUp0pZ5az0R/ak73jiwJnVJKtJr06j6aTRalxsOf+BZ12l1u4ZDQLITYg4lfJ B06A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:reply-to:date:in-reply-to:message-id :mime-version:references:subject:from:to:cc; bh=9yzgzTlgrscZUiJ1Gi4IjzGYJkO0pcdsrR04YqBf76E=; b=FBDHwYhnwgPJ07FiqSUuZCCYT0x4lirkJ5SieMQOo8wTS/XV/J4dwvlzU5uuQ/iVR1 slaMAAbmPX1Y8UAYKzErGt3BBQlq+SSCTQcgjm0C4RTYQLBdN2cYA7/3JSxnRRrGcm7N am7iSUoBPaQxw6v86rWDJip7w3IFsoKh8mjX2/5uFN81qBVsAkGDWaCX074LVcWxoR5H u4cTh+7+ByexHMH2UERMCk7Z7CK+69H1J4FcKuUg6HH5LohrVt5RG+Puqpw8X0svQhD4 StOqMzq7jUbS/ktZ185fYS3KLG33js75bgq3xIYFX7hiME2hDg4ZdEYP9gh2NcqVXZz6 p9zA== X-Gm-Message-State: AJIora+yxE/o1gZZ35e7NXRg/UjTT2YOFNpVOjcO+2xMaQJifp2oLG6d PwyJ/sUHoqRKaCuiSr8xTwTawJ/t88A= X-Received: from seanjc.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:3e5]) (user=seanjc job=sendgmr) by 2002:a17:902:bf49:b0:168:d855:883b with SMTP id u9-20020a170902bf4900b00168d855883bmr6167928pls.79.1655239694001; Tue, 14 Jun 2022 13:48:14 -0700 (PDT) Reply-To: Sean Christopherson Date: Tue, 14 Jun 2022 20:47:29 +0000 In-Reply-To: <20220614204730.3359543-1-seanjc@google.com> Message-Id: <20220614204730.3359543-21-seanjc@google.com> Mime-Version: 1.0 References: <20220614204730.3359543-1-seanjc@google.com> X-Mailer: git-send-email 2.36.1.476.g0c4daa206d-goog Subject: [PATCH v2 20/21] KVM: selftests: Use uapi header to get VMX and SVM exit reasons/codes From: Sean Christopherson To: Paolo Bonzini Cc: Sean Christopherson , Vitaly Kuznetsov , Wanpeng Li , Jim Mattson , Joerg Roedel , kvm@vger.kernel.org, linux-kernel@vger.kernel.org, Oliver Upton , Peter Shier Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-9.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Include the vmx.h and svm.h uapi headers that KVM so kindly provides instead of manually defining all the same exit reasons/code. Signed-off-by: Sean Christopherson --- .../selftests/kvm/include/x86_64/svm_util.h | 7 +-- .../selftests/kvm/include/x86_64/vmx.h | 51 +------------------ 2 files changed, 4 insertions(+), 54 deletions(-) diff --git a/tools/testing/selftests/kvm/include/x86_64/svm_util.h b/tools/testing/selftests/kvm/include/x86_64/svm_util.h index a339b537a575..7aee6244ab6a 100644 --- a/tools/testing/selftests/kvm/include/x86_64/svm_util.h +++ b/tools/testing/selftests/kvm/include/x86_64/svm_util.h @@ -9,15 +9,12 @@ #ifndef SELFTEST_KVM_SVM_UTILS_H #define SELFTEST_KVM_SVM_UTILS_H +#include + #include #include "svm.h" #include "processor.h" -#define SVM_EXIT_EXCP_BASE 0x040 -#define SVM_EXIT_HLT 0x078 -#define SVM_EXIT_MSR 0x07c -#define SVM_EXIT_VMMCALL 0x081 - struct svm_test_data { /* VMCB */ struct vmcb *vmcb; /* gva */ diff --git a/tools/testing/selftests/kvm/include/x86_64/vmx.h b/tools/testing/selftests/kvm/include/x86_64/vmx.h index 99fa1410964c..e4206f69b716 100644 --- a/tools/testing/selftests/kvm/include/x86_64/vmx.h +++ b/tools/testing/selftests/kvm/include/x86_64/vmx.h @@ -8,6 +8,8 @@ #ifndef SELFTEST_KVM_VMX_H #define SELFTEST_KVM_VMX_H +#include + #include #include "processor.h" #include "apic.h" @@ -100,55 +102,6 @@ #define VMX_EPT_VPID_CAP_AD_BITS 0x00200000 #define EXIT_REASON_FAILED_VMENTRY 0x80000000 -#define EXIT_REASON_EXCEPTION_NMI 0 -#define EXIT_REASON_EXTERNAL_INTERRUPT 1 -#define EXIT_REASON_TRIPLE_FAULT 2 -#define EXIT_REASON_INTERRUPT_WINDOW 7 -#define EXIT_REASON_NMI_WINDOW 8 -#define EXIT_REASON_TASK_SWITCH 9 -#define EXIT_REASON_CPUID 10 -#define EXIT_REASON_HLT 12 -#define EXIT_REASON_INVD 13 -#define EXIT_REASON_INVLPG 14 -#define EXIT_REASON_RDPMC 15 -#define EXIT_REASON_RDTSC 16 -#define EXIT_REASON_VMCALL 18 -#define EXIT_REASON_VMCLEAR 19 -#define EXIT_REASON_VMLAUNCH 20 -#define EXIT_REASON_VMPTRLD 21 -#define EXIT_REASON_VMPTRST 22 -#define EXIT_REASON_VMREAD 23 -#define EXIT_REASON_VMRESUME 24 -#define EXIT_REASON_VMWRITE 25 -#define EXIT_REASON_VMOFF 26 -#define EXIT_REASON_VMON 27 -#define EXIT_REASON_CR_ACCESS 28 -#define EXIT_REASON_DR_ACCESS 29 -#define EXIT_REASON_IO_INSTRUCTION 30 -#define EXIT_REASON_MSR_READ 31 -#define EXIT_REASON_MSR_WRITE 32 -#define EXIT_REASON_INVALID_STATE 33 -#define EXIT_REASON_MWAIT_INSTRUCTION 36 -#define EXIT_REASON_MONITOR_INSTRUCTION 39 -#define EXIT_REASON_PAUSE_INSTRUCTION 40 -#define EXIT_REASON_MCE_DURING_VMENTRY 41 -#define EXIT_REASON_TPR_BELOW_THRESHOLD 43 -#define EXIT_REASON_APIC_ACCESS 44 -#define EXIT_REASON_EOI_INDUCED 45 -#define EXIT_REASON_EPT_VIOLATION 48 -#define EXIT_REASON_EPT_MISCONFIG 49 -#define EXIT_REASON_INVEPT 50 -#define EXIT_REASON_RDTSCP 51 -#define EXIT_REASON_PREEMPTION_TIMER 52 -#define EXIT_REASON_INVVPID 53 -#define EXIT_REASON_WBINVD 54 -#define EXIT_REASON_XSETBV 55 -#define EXIT_REASON_APIC_WRITE 56 -#define EXIT_REASON_INVPCID 58 -#define EXIT_REASON_PML_FULL 62 -#define EXIT_REASON_XSAVES 63 -#define EXIT_REASON_XRSTORS 64 -#define LAST_EXIT_REASON 64 enum vmcs_field { VIRTUAL_PROCESSOR_ID = 0x00000000, -- 2.36.1.476.g0c4daa206d-goog