[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v1 02/28] x86/hvm: report SVM AVIC support
- To: xen-devel@xxxxxxxxxxxxxxxxxxxx
- From: dmukhin@xxxxxxxx
- Date: Wed, 4 Nov 2026 17:33:19 -0800
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 205.220.161.53) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=ford.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=ford.com; dkim=pass (signature was verified) header.d=saarlouis.ford.com; dkim=pass (signature was verified) header.d=ford.com; arc=none (0)
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=eM5Yf9oLT5mBcx2NrH7BE/p18L2T/go/cV8xvH+52Uo=; b=dtXEjWGPrTiJ5AWhMha67blLWKQ7owtWh2w9BhMvt1xe9G0TcL2E8UV8b3Ln+ryXI5nLo+QeYEvcC4rS9icnLyAfdE6SmGL3iqdfN8TKdxeizaEG3PpGZF/nktTJGjuJAGw7K+lpyhgxSgKI7Ww2P3yZT8XcMzVJSLG0VmTjb4uRVdgREBR3gSppGNcrxjqo/KgtQfZuuEdf7RtZStR67/8MPBkgpGOsu7EuQwLRbaoQjt8+N0SeJMgnyVMFJlOWNLTiT6PEom94K2pugwJtKpe+kBn8y3m0EBYIIwN0hqr0tgTljIslTHBlZAJTvpf1ShZ2kg5y/cMtvpRAvPlnOA==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=vAddVjx/8AWEaaRmQuZ442ob8dW3Euy5pY/pZ5YJ85xxyWjUqVGaoGhvKzjfR348ohIOVYpQF3O4Bl1wcA8gjfqgUzDxjE9GrPTJ1pXBgRIUxD2PkmjhdzQ1VRCj7SXclDw6/nUqK8fcAloSRQ9lLlCmwvmjWPWCsXNCl0Ld2g2zdYxhhEpplDKfT4Jpa/WE1UounkQEXfcgF4VZXsTREOvVHaI2GgQNB7kINpjEkmKNQKg4cLIMmgxMBmx8DyZz6X89jwcBDVN3MXaGQzg4J85k6Eo+yVRfapd/gOnGmkF0bDMlvPzNXP60FqNQT/GyI5Zld++VfbaHFwyeZ6PjsQ==
- Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=ppford header.d=ford.com header.i="@ford.com" header.h="Cc:Content-Transfer-Encoding:Content-Type:Date:From:In-Reply-To:Message-ID:MIME-Version:References:Subject:To"; dkim=pass header.s=selector2-azureford-onmicrosoft-com header.d=azureford.onmicrosoft.com header.i="@azureford.onmicrosoft.com" header.h="From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck"; dkim=pass header.s=ppserprodsaar header.d=saarlouis.ford.com header.i="@saarlouis.ford.com" header.h="Cc:Content-Transfer-Encoding:Date:From:In-Reply-To:Message-ID:MIME-Version:References:Subject:To"; dkim=pass header.s=ppfserpocford header.d=ford.com header.i="@ford.com" header.h="Cc:Content-Transfer-Encoding:Date:From:In-Reply-To:Message-ID:MIME-Version:References:Subject:To"
- Cc: andrew.cooper3@xxxxxxxxxx, jason.andryuk@xxxxxxx, jbeulich@xxxxxxxx, roger@xxxxxxxxxxxxxx, teddy.astie@xxxxxxxxxx, dmukhin@xxxxxxx, Denis Mukhin <dmukhin@xxxxxxxx>
- Delivery-date: Thu, 05 Nov 2026 01:34:32 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Pser-m365-app: SER-APP
From: Denis Mukhin <dmukhin@xxxxxxxx>
Report SVM AVIC support from CPUID Fn8000000A_EDX[AVIC](bit 13).
Signed-off-by: Denis Mukhin <dmukhin@xxxxxxxx>
---
xen/arch/x86/hvm/svm/svm.c | 1 +
xen/arch/x86/include/asm/hvm/svm.h | 2 ++
2 files changed, 3 insertions(+)
diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c
index e11d5c55248d..cf008a8acdf2 100644
--- a/xen/arch/x86/hvm/svm/svm.c
+++ b/xen/arch/x86/hvm/svm/svm.c
@@ -2456,6 +2456,7 @@ static void __init print_svm_features(void)
P(cpu_has_svm_spec_ctrl, "MSR_SPEC_CTRL virtualisation");
P(cpu_has_svm_vnmi, "Virtual NMI");
P(cpu_has_svm_bus_lock, "Bus Lock Filter");
+ P(cpu_has_svm_avic, "Advanced Virtual Interrupt Controller");
#undef P
if ( !printed )
diff --git a/xen/arch/x86/include/asm/hvm/svm.h
b/xen/arch/x86/include/asm/hvm/svm.h
index a35a61273baa..0fc33f41b09d 100644
--- a/xen/arch/x86/include/asm/hvm/svm.h
+++ b/xen/arch/x86/include/asm/hvm/svm.h
@@ -33,6 +33,7 @@ extern u32 svm_feature_flags;
#define SVM_FEATURE_DECODEASSISTS 7 /* Decode assists support */
#define SVM_FEATURE_PAUSEFILTER 10 /* Pause intercept filter support */
#define SVM_FEATURE_PAUSETHRESH 12 /* Pause intercept filter support */
+#define SVM_FEATURE_AVIC 13 /* Advanced Virtual Interrupt Controller
*/
#define SVM_FEATURE_VLOADSAVE 15 /* virtual vmload/vmsave */
#define SVM_FEATURE_VGIF 16 /* Virtual GIF */
#define SVM_FEATURE_SSS 19 /* NPT Supervisor Shadow Stacks */
@@ -55,6 +56,7 @@ static inline bool cpu_has_svm_feature(unsigned int feat)
#define cpu_has_pause_filter cpu_has_svm_feature(SVM_FEATURE_PAUSEFILTER)
#define cpu_has_pause_thresh cpu_has_svm_feature(SVM_FEATURE_PAUSETHRESH)
#define cpu_has_tsc_ratio cpu_has_svm_feature(SVM_FEATURE_TSCRATEMSR)
+#define cpu_has_svm_avic cpu_has_svm_feature(SVM_FEATURE_AVIC)
#define cpu_has_svm_vloadsave cpu_has_svm_feature(SVM_FEATURE_VLOADSAVE)
#define cpu_has_svm_sss cpu_has_svm_feature(SVM_FEATURE_SSS)
#define cpu_has_svm_spec_ctrl cpu_has_svm_feature(SVM_FEATURE_SPEC_CTRL)
--
2.55.0
|