From nobody Sun Feb 8 13:16:53 2026 Delivered-To: importer@patchew.org Received-SPF: none (zohomail.com: 8.43.85.245 is neither permitted nor denied by domain of lists.libvirt.org) client-ip=8.43.85.245; envelope-from=devel-bounces@lists.libvirt.org; helo=lists.libvirt.org; Authentication-Results: mx.zohomail.com; spf=none (zohomail.com: 8.43.85.245 is neither permitted nor denied by domain of lists.libvirt.org) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 17102636251191001.9528325438018; Tue, 12 Mar 2024 10:13:45 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 996) id E7EE31E95; Tue, 12 Mar 2024 13:13:43 -0400 (EDT) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id 703691F56; Tue, 12 Mar 2024 13:07:31 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 996) id F36A51A67; Tue, 12 Mar 2024 13:07:12 -0400 (EDT) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id E1E591A74 for ; Tue, 12 Mar 2024 13:07:11 -0400 (EDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-185-NCOVsX3BN3iPwJkKxN7noQ-1; Tue, 12 Mar 2024 13:07:10 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 08830800266 for ; Tue, 12 Mar 2024 17:07:10 +0000 (UTC) Received: from orkuz (unknown [10.45.224.148]) by smtp.corp.redhat.com (Postfix) with ESMTP id C01183C21 for ; Tue, 12 Mar 2024 17:07:09 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE, T_SCC_BODY_TEXT_LINE,UPPERCASE_50_75 autolearn=unavailable autolearn_force=no version=3.4.4 X-MC-Unique: NCOVsX3BN3iPwJkKxN7noQ-1 From: Jiri Denemark To: devel@lists.libvirt.org Subject: [PATCH 05/22] cpu_map: Do not ignore VMX features in sync_qemu_models script Date: Tue, 12 Mar 2024 18:06:45 +0100 Message-ID: <5c54df50449bb537a751f23628647b986f4aed04.1710262622.git.jdenemar@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.1 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Message-ID-Hash: UGR57NRXFY5GLKMGZ3Y2DQI3V5UC2V7M X-Message-ID-Hash: UGR57NRXFY5GLKMGZ3Y2DQI3V5UC2V7M X-MailFrom: jdenemar@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-config-1; header-match-config-2; header-match-config-3; header-match-devel.lists.libvirt.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.2.2 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZM-MESSAGEID: 1710263626894100001 Signed-off-by: Jiri Denemark Reviewed-by: Tim Wiederhake --- src/cpu_map/sync_qemu_models_i386.py | 114 ++++++++++++++++++++++++++- 1 file changed, 111 insertions(+), 3 deletions(-) diff --git a/src/cpu_map/sync_qemu_models_i386.py b/src/cpu_map/sync_qemu_m= odels_i386.py index 1c6a2d4d27..9e96b4244e 100755 --- a/src/cpu_map/sync_qemu_models_i386.py +++ b/src/cpu_map/sync_qemu_models_i386.py @@ -184,12 +184,120 @@ def translate_feature(name): "MSR_ARCH_CAP_SKIP_L1DFL_VMENTRY": "skip-l1dfl-vmentry", "MSR_ARCH_CAP_TAA_NO": "taa-no", "MSR_CORE_CAP_SPLIT_LOCK_DETECT": "split-lock-detect", + + # FEAT_VMX_PROCBASED_CTLS + "VMX_CPU_BASED_VIRTUAL_INTR_PENDING": "vmx-vintr-pending", + "VMX_CPU_BASED_USE_TSC_OFFSETING": "vmx-tsc-offset", + "VMX_CPU_BASED_HLT_EXITING": "vmx-hlt-exit", + "VMX_CPU_BASED_INVLPG_EXITING": "vmx-invlpg-exit", + "VMX_CPU_BASED_MWAIT_EXITING": "vmx-mwait-exit", + "VMX_CPU_BASED_RDPMC_EXITING": "vmx-rdpmc-exit", + "VMX_CPU_BASED_RDTSC_EXITING": "vmx-rdtsc-exit", + "VMX_CPU_BASED_CR3_LOAD_EXITING": "vmx-cr3-load-noexit", + "VMX_CPU_BASED_CR3_STORE_EXITING": "vmx-cr3-store-noexit", + "VMX_CPU_BASED_CR8_LOAD_EXITING": "vmx-cr8-load-exit", + "VMX_CPU_BASED_CR8_STORE_EXITING": "vmx-cr8-store-exit", + "VMX_CPU_BASED_TPR_SHADOW": "vmx-flexpriority", + "VMX_CPU_BASED_VIRTUAL_NMI_PENDING": "vmx-vnmi-pending", + "VMX_CPU_BASED_MOV_DR_EXITING": "vmx-movdr-exit", + "VMX_CPU_BASED_UNCOND_IO_EXITING": "vmx-io-exit", + "VMX_CPU_BASED_USE_IO_BITMAPS": "vmx-io-bitmap", + "VMX_CPU_BASED_MONITOR_TRAP_FLAG": "vmx-mtf", + "VMX_CPU_BASED_USE_MSR_BITMAPS": "vmx-msr-bitmap", + "VMX_CPU_BASED_MONITOR_EXITING": "vmx-monitor-exit", + "VMX_CPU_BASED_PAUSE_EXITING": "vmx-pause-exit", + "VMX_CPU_BASED_ACTIVATE_SECONDARY_CONTROLS": "vmx-secondary-ctls", + + # FEAT_VMX_SECONDARY_CTLS + "VMX_SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES": "vmx-apicv-xapic", + "VMX_SECONDARY_EXEC_ENABLE_EPT": "vmx-ept", + "VMX_SECONDARY_EXEC_DESC": "vmx-desc-exit", + "VMX_SECONDARY_EXEC_RDTSCP": "vmx-rdtscp-exit", + "VMX_SECONDARY_EXEC_VIRTUALIZE_X2APIC_MODE": "vmx-apicv-x2apic", + "VMX_SECONDARY_EXEC_ENABLE_VPID": "vmx-vpid", + "VMX_SECONDARY_EXEC_WBINVD_EXITING": "vmx-wbinvd-exit", + "VMX_SECONDARY_EXEC_UNRESTRICTED_GUEST": "vmx-unrestricted-guest", + "VMX_SECONDARY_EXEC_APIC_REGISTER_VIRT": "vmx-apicv-register", + "VMX_SECONDARY_EXEC_VIRTUAL_INTR_DELIVERY": "vmx-apicv-vid", + "VMX_SECONDARY_EXEC_PAUSE_LOOP_EXITING": "vmx-ple", + "VMX_SECONDARY_EXEC_RDRAND_EXITING": "vmx-rdrand-exit", + "VMX_SECONDARY_EXEC_ENABLE_INVPCID": "vmx-invpcid-exit", + "VMX_SECONDARY_EXEC_ENABLE_VMFUNC": "vmx-vmfunc", + "VMX_SECONDARY_EXEC_SHADOW_VMCS": "vmx-shadow-vmcs", + "VMX_SECONDARY_EXEC_ENCLS_EXITING": "vmx-encls-exit", + "VMX_SECONDARY_EXEC_RDSEED_EXITING": "vmx-rdseed-exit", + "VMX_SECONDARY_EXEC_ENABLE_PML": "vmx-pml", + "VMX_SECONDARY_EXEC_XSAVES": "vmx-xsaves", + "VMX_SECONDARY_EXEC_TSC_SCALING": "vmx-tsc-scaling", + "VMX_SECONDARY_EXEC_ENABLE_USER_WAIT_PAUSE": "vmx-enable-user-wait= -pause", + + # FEAT_VMX_PINBASED_CTLS + "VMX_PIN_BASED_EXT_INTR_MASK": "vmx-intr-exit", + "VMX_PIN_BASED_NMI_EXITING": "vmx-nmi-exit", + "VMX_PIN_BASED_VIRTUAL_NMIS": "vmx-vnmi", + "VMX_PIN_BASED_VMX_PREEMPTION_TIMER": "vmx-preemption-timer", + "VMX_PIN_BASED_POSTED_INTR": "vmx-posted-intr", + + # FEAT_VMX_EXIT_CTLS + "VMX_VM_EXIT_SAVE_DEBUG_CONTROLS": "vmx-exit-nosave-debugctl", + "VMX_VM_EXIT_LOAD_IA32_PERF_GLOBAL_CTRL": "vmx-exit-load-perf-glob= al-ctrl", + "VMX_VM_EXIT_ACK_INTR_ON_EXIT": "vmx-exit-ack-intr", + "VMX_VM_EXIT_SAVE_IA32_PAT": "vmx-exit-save-pat", + "VMX_VM_EXIT_LOAD_IA32_PAT": "vmx-exit-load-pat", + "VMX_VM_EXIT_SAVE_IA32_EFER": "vmx-exit-save-efer", + "VMX_VM_EXIT_LOAD_IA32_EFER": "vmx-exit-load-efer", + "VMX_VM_EXIT_SAVE_VMX_PREEMPTION_TIMER": "vmx-exit-save-preemption= -timer", + "VMX_VM_EXIT_CLEAR_BNDCFGS": "vmx-exit-clear-bndcfgs", + "VMX_VM_EXIT_CLEAR_IA32_RTIT_CTL": "vmx-exit-clear-rtit-ctl", + "VMX_VM_EXIT_LOAD_IA32_PKRS": "vmx-exit-load-pkrs", + + # FEAT_VMX_ENTRY_CTLS + "VMX_VM_ENTRY_LOAD_DEBUG_CONTROLS": "vmx-entry-noload-debugctl", + "VMX_VM_ENTRY_IA32E_MODE": "vmx-entry-ia32e-mode", + "VMX_VM_ENTRY_LOAD_IA32_PERF_GLOBAL_CTRL": "vmx-entry-load-perf-gl= obal-ctrl", + "VMX_VM_ENTRY_LOAD_IA32_PAT": "vmx-entry-load-pat", + "VMX_VM_ENTRY_LOAD_IA32_EFER": "vmx-entry-load-efer", + "VMX_VM_ENTRY_LOAD_BNDCFGS": "vmx-entry-load-bndcfgs", + "VMX_VM_ENTRY_LOAD_IA32_RTIT_CTL": "vmx-entry-load-rtit-ctl", + "VMX_VM_ENTRY_LOAD_IA32_PKRS": "vmx-entry-load-pkrs", + + # FEAT_VMX_MISC + "MSR_VMX_MISC_STORE_LMA": "vmx-store-lma", + "MSR_VMX_MISC_ACTIVITY_HLT": "vmx-activity-hlt", + "MSR_VMX_MISC_ACTIVITY_SHUTDOWN": "vmx-activity-shutdown", + "MSR_VMX_MISC_ACTIVITY_WAIT_SIPI": "vmx-activity-wait-sipi", + "MSR_VMX_MISC_VMWRITE_VMEXIT": "vmx-vmwrite-vmexit-fields", + "MSR_VMX_MISC_ZERO_LEN_INJECT": "vmx-zero-len-inject", + + # FEAT_VMX_EPT_VPID_CAPS + "MSR_VMX_EPT_EXECONLY": "vmx-ept-execonly", + "MSR_VMX_EPT_PAGE_WALK_LENGTH_4": "vmx-page-walk-4", + "MSR_VMX_EPT_PAGE_WALK_LENGTH_5": "vmx-page-walk-5", + "MSR_VMX_EPT_UC": "vmx-ept-uc", + "MSR_VMX_EPT_WB": "vmx-ept-wb", + "MSR_VMX_EPT_2MB": "vmx-ept-2mb", + "MSR_VMX_EPT_1GB": "vmx-ept-1gb", + "MSR_VMX_EPT_INVEPT": "vmx-invept", + "MSR_VMX_EPT_AD_BITS": "vmx-eptad", + "MSR_VMX_EPT_ADVANCED_VMEXIT_INFO": "vmx-ept-advanced-exitinfo", + "MSR_VMX_EPT_INVEPT_SINGLE_CONTEXT": "vmx-invept-single-context", + "MSR_VMX_EPT_INVEPT_ALL_CONTEXT": "vmx-invept-all-context", + "MSR_VMX_EPT_INVVPID": "vmx-invvpid", + "MSR_VMX_EPT_INVVPID_SINGLE_ADDR": "vmx-invvpid-single-addr", + "MSR_VMX_EPT_INVVPID_SINGLE_CONTEXT": "vmx-invvpid-single-context", + "MSR_VMX_EPT_INVVPID_ALL_CONTEXT": "vmx-invvpid-all-context", + "MSR_VMX_EPT_INVVPID_SINGLE_CONTEXT_NOGLOBALS": "vmx-invvpid-singl= e-context-noglobals", + + # FEAT_VMX_BASIC + "MSR_VMX_BASIC_INS_OUTS": "vmx-ins-outs", + "MSR_VMX_BASIC_TRUE_CTLS": "vmx-true-ctls", + "MSR_VMX_BASIC_ANY_ERRCODE": "vmx-any-errcode", + + # FEAT_VMX_VMFUNC + "MSR_VMX_VMFUNC_EPT_SWITCHING": "vmx-eptp-switching", } =20 ignore =3D any([ - name.startswith("VMX_"), - name.startswith("vmx-"), - name.startswith("MSR_VMX_"), name in ("0", "model", "model-id", "stepping"), name in ("CPUID_EXT_MONITOR", "monitor"), name in ("MSR_VMX_BASIC_DUAL_MONITOR", "dual-monitor"), --=20 2.44.0 _______________________________________________ Devel mailing list -- devel@lists.libvirt.org To unsubscribe send an email to devel-leave@lists.libvirt.org