[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 06/13] x86/hvm: Clamp Viridian features to known set
- To: xen-devel@xxxxxxxxxxxxxxxxxxxx
- From: chunjie.zhu@xxxxxxxxxx
- Date: Sat, 10 Oct 2026 18:13:19 +0800
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
- 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=bwU9gir2MKPzRvplN3rIcyzo64FzHBo/tZ4TRRP+JYc=; b=pV1flZ73JCOJcJMKlnYMzN3CAj9RI5uLmweSl+uyL2p8JG3WVrDMA0VIFOJ8QBar9cA7Fi+8hzOF+/sHISUnfhXKdh/CGua8lr5Qpizif0kLraiXvOjvvNBXSD7RkIFRZCd/+/pKf789+886HhRe/6+5ckqV59HLe804swRT4qh7/IGFXK0KJXD15FHMxLLaZmBi4Uf3k7RiNM6h0ZTK/WWWjnu2/zWXBcRExazIkU6TSaZ0U76rzpf9zYwiWJRHG7tEwxtwuYNEearihTdtDdWzGCz3BayZXz/T+hgCn9yB1jdZSPoIXqElCt07NOomaI2KKFEGbNpUDKnV3Eiqlg==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=uuR5YDqQvSiHUBX4G8NXRQVi3kShcdebYzunSvSTiau9rjl6HfG1Ce4aiL0++MQc6JG71VKWXj7CNvpSySfINJ8u05KY6yVNSEO/nwukvOaYbrANsjaSU45LzY7NnIVoU5sCT2KdSOwt2iVWGBeNWQrrhoakz1gyfaHyylgDWLn0FNh9B/xtjDTzZ8o8Fh66A4RUA6kcCvxl5UO9fVlSG8VT5Q7JVsiP4hJJ3zGK9Hh/zKqOrFSoo0/Rdp4GC5kKOLfEKfRDsy25NuSrRa6I+4X57R5ZxdszatfaZTb5sVweOPlleo52qoG2bkahMEcM5b98gVsHUMoqzLwOCh4zBw==
- Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=selector1 header.d=citrix.com header.i="@citrix.com" header.h="From:Date:Subject:Message-Id:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck"
- Authentication-results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com;
- Cc: ross.lagerwall@xxxxxxxxxx, jbeulich@xxxxxxxx, andrew.cooper3@xxxxxxxxxx, roger@xxxxxxxxxxxxxx, jason.andryuk@xxxxxxx, teddy.astie@xxxxxxxxxx, stephen.cheng@xxxxxxxxxx, lin.liu01@xxxxxxxxxx
- Delivery-date: Sat, 10 Oct 2026 10:15:13 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
From: Ross Lagerwall <ross.lagerwall@xxxxxxxxxx>
Instead of returning EINVAL on an unknown feature bit, clamp to the
known feature set. This simplifies upgrades since when the hypervisor
and toolstack are updated without an immediate reboot, the toolstack may
set unknown feature bits and the existing behaviour leaves the VM
without any Virdian features enabled.
Signed-off-by: Ross Lagerwall <ross.lagerwall@xxxxxxxxxx>
---
xen/arch/x86/hvm/hvm.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c
index ef9c7cd05777..e2c31d87afc9 100644
--- a/xen/arch/x86/hvm/hvm.c
+++ b/xen/arch/x86/hvm/hvm.c
@@ -4235,8 +4235,10 @@ static int hvm_set_param(struct domain *d, uint32_t
index, uint64_t value)
case HVM_PARAM_VIRIDIAN:
if ( !IS_ENABLED(CONFIG_VIRIDIAN) )
rc = -ENODEV;
- else if ( (value & ~HVMPV_feature_mask) || !(value & HVMPV_base_freq) )
+ else if ( !(value & HVMPV_base_freq) )
rc = -EINVAL;
+
+ value &= HVMPV_feature_mask;
break;
case HVM_PARAM_IDENT_PT:
/*
--
2.34.1
|