From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from DB3PR0202CU003.outbound.protection.outlook.com (mail-northeuropeazon11020118.outbound.protection.outlook.com [52.101.84.118]) by lore.virtuozzo.com (Postfix) with ESMTPS id AC47380F81 for ; Thu, 29 Oct 2026 12:25:42 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=evXzgp08WSonNALn/XI2xzfSZjvNJzgBBN6m9z8G9iMjua0v0C9UbY7xiwta30C5nvW1+8iP5GQGZnjYSl9MbhVZZDzxfuETQeIf40KV9avoW2hCc5hqGLSddubtYSB0cZWNkbcFbcHVhKnnxZ49Nm+2bqzO1CulE4PnK4BEYzIOQakjRXEWl+PnvtlAUsjOQtIh2mRQxhlpjwsw92obv/X1J3D1hLFJHdRdSN1jlQYDv83iPL67bLa8XpWFKQ8EDW/Q8hsTGDNEl1iJ8Fb5G2RCGk356vsAEe+tH03L5bVhFbhmwUad2jqeN8UjsJSLFNngY1FpEdsSv6c/U9AyIA== 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=k2wHkt6e0ve9nwfTh1XQHTuH4NZlemByF/e/vDg1zvU=; b=zFmB2xyEAs1JEj6vyi/OblA2t+6L9k8VhVNLyyWkcnGrp3BvGxEd0E5Vj1+YY3cRN9Rv/j7wWevtM7WsOYQk+GYqvzi+5jsg0ir/+BV1Mn6ZSMrg5QHLjq0RB4IYY69U8nuoDyUA+zk3lztL/9aOe7LLb9r9oC9urBeQjORZZBRI+XjbQdGPXS/mi6uW/aH1OSE6AevW3aZraT5f7Rycgg8S0gcVFt00x2pr+UQG+jvovRaYE94HMZrCH9PU3xpUYSai+U84SffE0o4UPlafLHDQQV4CJcHlytkBvJnbVjslK8XubVSC4JVfsd1Uplwp5yIdfy3za95FtuWYG0aVqw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 2a00:1450:4864:20::32a) smtp.rcpttodomain=virtuozzo.com smtp.mailfrom=openvz.org; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=openvz.org; dkim=pass (signature was verified) header.d=openvz.org; arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.onmicrosoft.com; s=selector2-virtuozzo-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=k2wHkt6e0ve9nwfTh1XQHTuH4NZlemByF/e/vDg1zvU=; b=WhNjquPkNKV5y6e0irCCG3VHB9usfM4YR0JE3MqMnRZAgx1Tf2Dy0l+iOjpZBYLHvKAEYUwv0/jQLdS8b3jDJfU6arpwrMnLDp32BcVO7LuRkgu5rbWIh4uhe3eooq9E/KKCxIs1UQSG+myLozVMnPPNCdzAAQlbctMeE95Kv8E= Received: from PAZP264CA0231.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:238::13) by GVXPR08MB11814.eurprd08.prod.outlook.com (2603:10a6:150:314::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.546.22; Thu, 29 Oct 2026 12:25:37 +0000 Received: from ZR1PEPF0000E6AE.eurprd05.prod.outlook.com (2603:10a6:102:238:cafe::78) by PAZP264CA0231.outlook.office365.com (2603:10a6:102:238::13) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.546.22 via Frontend Transport; Thu, 29 Oct 2026 12:25:36 +0000 Authentication-Results: mx.microsoft.com 1; spf=pass (sender IP is 2a00:1450:4864:20::32a) smtp.mailfrom=openvz.org; dkim=pass (signature was verified) header.d=openvz.org;dmarc=pass action=none header.from=openvz.org; Received-SPF: Pass (protection.outlook.com: domain of openvz.org designates 2a00:1450:4864:20::32a as permitted sender) receiver=protection.outlook.com; client-ip=2a00:1450:4864:20::32a; helo=mail-wm1-x32a.google.com; pr=C Received: from mail-wm1-x32a.google.com (2a00:1450:4864:20::32a) by ZR1PEPF0000E6AE.mail.protection.outlook.com (2603:10a6:918::155) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.569.4 via Frontend Transport; Thu, 29 Oct 2026 12:25:36 +0000 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-4a2069b9710so19539325e9.2 for ; Thu, 29 Oct 2026 05:25:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=openvz.org; s=google; t=1793276736; x=1793881536; darn=virtuozzo.com; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=k2wHkt6e0ve9nwfTh1XQHTuH4NZlemByF/e/vDg1zvU=; b=esRZVHbFIvx01YD2w1QxhXkX+YoqSl7IQLGoY83Q0kzFs8jnP+gXEVPBGraqQv2kPp V8IdHd1l5NsuCubRVHMT6QsbcRX2hrK4tMWm2Up3zL6iv9+TIyR7wYCyE/w/0k+iwNv4 uSzXhghiM5JWf9YBe4IDdr7ii/rlE8xqF+GIgLlURr8u1M6LTYQpuYw+PzK0sESzZ9o4 MwlknJDmS39Ad+Pe+sR6dazNzTuZrc9KGLlWhMVbe9amy1trTT+JnU2zWqBrKD8X8zgo ftgalcFGKuPgiigwNbeTxxhZg3qBmf+MknOV7hx7lIGafLVOTE+Kr8BcLCbLyn0W4wK8 PkVw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1793276736; x=1793881536; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=k2wHkt6e0ve9nwfTh1XQHTuH4NZlemByF/e/vDg1zvU=; b=pgOgvYMDaPSlIgxjuXKv/0w4jFqb+qGrHF1PY7WEm/Fm2iTS17rX9txUS7wBapaadV DNL2+ORiHiQ4W1eFT31K4SOtxU7Y3K2dPhJjskVRvVtKazYk6LsRNZIip1+k6ON1+z9O b75s7bvY3VR4AiMC014tBrv8+xo1Rf5Kh/8kQ6prZ5mE33GV0Fqxo1bGvPnMiPDjYugy yyfb5lIk+I/quY0IWthyMgEp28UYj3ZPdum2B3n+mone1Nscwtz5qtpb0uqbTooh1bVw ipCNYImTzZvXpjaLUX645ap4KCwvEgYa37qMlCBGtdhLU/RRY/kYwHcntrROa4ctI5B4 0pxg== X-Gm-Message-State: AFq9FYIx0gUEH9mUB6Fh/eL4JdDzSjuM2DgvmeVJ/LPJVQgnGOdoW8bA E7qYNShkWlt16jfq0hDk09EefatvhN9sewLmtN4aZ0xrDnBeiio1UicWqIHU8uUstF4cwQ== X-Gm-Gg: AYBFou39Dmaw4Hw2lB66OiEGOgV0z6Pb4O4SyvEh3os5D5GCwUi5AT/BERy2+p6odFY UEoqP3v+uqymLYtX/L4UGKvFNN9l60saSdksuIBN3xAJKmdzR/0hD0fIn/7TuyH0yk7n2tMrslI nPQbCGj5SftVkTV+oxMTKvZVypsCP0u+MCTIKNR3QNRM5d8fLXBM1ErC5xIcCfc29OWJG2YUNZw 3gDc4bvJcqAkw/wfQtLSZeBXoTidFEKAtC5Jhq9g3j2S0GSJXvVXJxhDUeuayVnIGehpLyKfups yeySCStJ3boALJSWBZmMZCSkaLTfUBZ3AgcIm2AYqr88j9xyJcKb+9xqn+qvZHZg4Fjm+E1mvyl TWA8ZQdOMfEcXHJobgAiW6GdRTeptdXPICFElAPllULvXM0VGWpN+BZPUKFSqk78a49w8C5eVAc I01IEsB+irg8GEk82bRESmYrRccPJ54v7rQllRCSPhARNvfrlbfovc+sDForfQrgfXkhFF8/LRz ILC/vrrtKBHcs8y4mFPGYgkL2i4ROTh0u7YvVLiSckab62AYQr/soSwi4xpzYrB6v83QJpdzA+P ieiPFsBt+YZNi1GIMQmAv4grIA== X-Received: by 2002:a05:600c:4e01:b0:4a2:190f:cf6a with SMTP id 5b1f17b1804b1-4a967ca03demr124940375e9.35.1793276735812; Thu, 29 Oct 2026 05:25:35 -0700 (PDT) Received: from athena.sw.ru ([2a06:5b06:b600:300:f4be:f111:4ee0:40d3]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4aa80285b88sm62423205e9.14.2026.10.29.05.25.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2026 05:25:35 -0700 (PDT) From: "Denis V. Lunev" To: andrey.zhadchenko@virtuozzo.com Cc: svt-core@virtuozzo.com, den@openvz.org Subject: [PATCH v3 hci-8.0/hci-8.1 5/6] i386: keep v-vmsave-vmload for nested AMD guests on vz types up to vz9.2.0 #VSTOR-152264 Date: Thu, 29 Oct 2026 13:25:26 +0100 Message-ID: <20261029122527.365104-6-den@openvz.org> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20261029122527.365104-1-den@openvz.org> References: <20261029122527.365104-1-den@openvz.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-EOPTenantAttributedMessage: 0bc7f26d-0264-416e-a6fc-8352af79c58f:0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: ZR1PEPF0000E6AE:EE_|GVXPR08MB11814:EE_ X-MS-Office365-Filtering-Correlation-Id: fd4cd622-c0a8-46ed-b54b-08df35b7bc62 X-LD-Processed: 0bc7f26d-0264-416e-a6fc-8352af79c58f,ExtAddr X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 0 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|704161411799003|9140799003|61400799027|376014|82310400026|43022699015|48200799018|6059299003|5063699009|56012099006|261026140227099003|16102099003|55112099003|18002099003|22082099003|261028144727099003|10067099003|261022105027099003|261009221227099003|261009221727099003|261021123027099003|261021121427099003|261009223327099003|261009223027099003|261009220027099003|261026121527099003; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?Op96uPvwAq4qFj5/JEx9xbe+4hV9zcQBlOevY57MsQHh33M6eJgNUlyc4g0L?= =?us-ascii?Q?d/5QI5fuVwg8nenVCU+YOU4xUGSYegvVT3tu1VzDBY39zlgxR3xIlAjIWy7N?= =?us-ascii?Q?5XXuoPJ0sBrQPPmSuAbb1390bq+X+bGw/p/QFYJBDAhZNVAEk7c8/Ponecr7?= =?us-ascii?Q?bLc/PA8MW6BLjOYNcPxD8oQUAhynluT81e5dNA19pd5M1DeLlV/zdmpLCuwB?= =?us-ascii?Q?RxJSf+g5OqiKaX43Jeue9wOWBGqleNfWAs0uIxfs7ehyYIb0QH6Dk5mNXWrH?= =?us-ascii?Q?VqcG4J5I02xMHxSWzRuhgnxN3G0sLeBxcS2AG/nbJ9A0bRSMgo708AhOV1Ay?= =?us-ascii?Q?4i5/1l4nTzc/ynjL1DglAbwhHW3r1wUbh4I+6pULLXT1vD1l2OUaUkUGNFm7?= =?us-ascii?Q?B7gsamKFKk5vyTI7WEAuYEqVS8o5/aO+N044KAt7rYkkKcUYNblDS3k1iLtN?= =?us-ascii?Q?omu672kZM82guAMNQ8yS+ITjaFgxqxt2o7Yircl/G9QvDKkVTs41fAjOJp6/?= =?us-ascii?Q?YlB7eyEJU9uReji3mIV1LCaFjYZPX6ODeTpsiozc/CojMGBzsaOHh1MvoTYJ?= =?us-ascii?Q?o1LTQu2pOIkiD0W81uG0m06kfMbiznytqlvLJWe4FgIdmVlBVMh0c5UwTayP?= =?us-ascii?Q?WH8r0UK8rToS0NnezK6YRPYkCDQTDnZQ1MPOLGBDpzNxB3TbcpuZBeP1KZ/S?= =?us-ascii?Q?yV6ptSlzRxegeiiKuLgWWYXgJJk9DHdV22+oaYf9U5EfKFFbiNzTpSBMrFY5?= =?us-ascii?Q?yitqBN/gcIC+x/ZgDJxKcpwfggf9mnZD1v3TXbDqCvhxEcsZ8d45z5KBqt9l?= =?us-ascii?Q?rLAPN9Sz37kHb6tqRyII6+fsEN8xX8I1zvC5sMgAUU3yh1EJZDdrZDzlOmsd?= =?us-ascii?Q?ju0Dhn6CPIZe9mLWZvjN2N06OUtIy9DjH32hLdexr4qzs/WVCdnzIetMIYsW?= =?us-ascii?Q?wcfHc+prwkYaDCqzGbQ3gj7qx8vzpsVU14JeZEV0UM6Nhk1iomBWskKckgGi?= =?us-ascii?Q?idcyrdknOPJYMysPOIRGcZXvRw=3D=3D?= X-Forefront-Antispam-Report: CIP:2a00:1450:4864:20::32a;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail-wm1-x32a.google.com;PTR:mail-wm1-x32a.google.com;CAT:NONE;SFS:(13230040)(704161411799003)(9140799003)(61400799027)(376014)(82310400026)(43022699015)(48200799018)(6059299003)(5063699009)(56012099006)(261026140227099003)(16102099003)(55112099003)(18002099003)(22082099003)(261028144727099003)(10067099003)(261022105027099003)(261009221227099003)(261009221727099003)(261021123027099003)(261021121427099003)(261009223327099003)(261009223027099003)(261009220027099003)(261026121527099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: KhlOWm575EI4XoghdOk+VrjGSgOSOYSZ22ingdB1lbcSeWv1ZZ785RwauJg6KqdV+PvyCdNkamIlS2vj2lZotFxqeZsRrPYF3KLzQfZ3B8O8GmwWg3trZQZ3gotDhfcIwFw9a84BwrlRSZgBfbx4mlohE55fGHBZ4Z6wa6C6oBpIfwTkuJNbn/102ESDLSdYnz7Q0WektORJ7O1s9Iw0jBq50vnXUu7+Tsupoc5gOZVKWm5euMz5rs56XRJQYU0ZlTcBwfLRBHDSrU7msHFNoX/UXEtKoAy068aODiuXCEWLh9lMoKlozP41JDV93Uqh23QGoirEcM1Oj81cGPrpceCwP5mrFTkrhG1IEOn8s6lotHI5Lx7BqrvZNQP+lKytwIdzQ9tQ8vSaYEjJBJ61d0esCYlvvvhqkCKnc4/28AwWYU+ZYk92mB1ybiz9d0OL X-ExternalRecipientOutboundConnectors: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-Auto-Response-Suppress: DR, OOF, AutoReply X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Oct 2026 12:25:36.4889 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: fd4cd622-c0a8-46ed-b54b-08df35b7bc62 X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-AuthSource: ZR1PEPF0000E6AE.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB11814 List-Id: From: Denis V. Lunev On Zen 4 client parts (family 19h models 0x18-0x1f and 0x60-0x7f) the 6.12 kernel clears virtualized VMSAVE/VMLOAD in init_amd_zen4(): some BIOS versions advertise it, and it can lead to random host reboots. KVM then stops offering v-vmsave-vmload. A nested guest (svm=on) started before has it in its CPUID, and QEMU filters it on such a host, so migration, restore and snapshot revert fail. Add x-v-vmsave-vmload-compat and turn it on in pc_vz_9_2_compat: an AMD guest keeps a requested v-vmsave-vmload. This does not turn host VLS back on: KVM keeps intercepting VMLOAD and VMSAVE of the nested guest and emulates them (nested_vmcb_needs_vls_intercept()), which is only slower. Signed-off-by: Denis V. Lunev Acked-by: Andrey Drobyshev --- hw/i386/pc.c | 1 + target/i386/cpu.c | 7 +++++++ target/i386/cpu.h | 1 + 3 files changed, 9 insertions(+) diff --git a/hw/i386/pc.c b/hw/i386/pc.c index 91198e8996c..5b2b2de4064 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -552,6 +552,7 @@ GlobalProperty pc_vz_9_2_compat[] = { { TYPE_X86_CPU, "x-tsx-compat", "on" }, { TYPE_X86_CPU, "x-spec-ctrl-compat", "on" }, { TYPE_X86_CPU, "x-bus-lock-detect-compat", "on" }, + { TYPE_X86_CPU, "x-v-vmsave-vmload-compat", "on" }, }; const size_t pc_vz_9_2_compat_len = G_N_ELEMENTS(pc_vz_9_2_compat); diff --git a/target/i386/cpu.c b/target/i386/cpu.c index a3c5c9ce1a8..47027a2b828 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -9134,6 +9134,11 @@ static uint64_t x86_cpu_compat_kept_features(X86CPU *cpu, FeatureWord w) } } break; + case FEAT_SVM: + if (cpu->v_vmsave_vmload_compat && IS_AMD_CPU(env)) { + kept = CPUID_SVM_V_VMSAVE_VMLOAD; + } + break; default: break; } @@ -10102,6 +10107,8 @@ static const Property x86_cpu_properties[] = { DEFINE_PROP_BOOL("x-spec-ctrl-compat", X86CPU, spec_ctrl_compat, false), DEFINE_PROP_BOOL("x-bus-lock-detect-compat", X86CPU, bus_lock_detect_compat, false), + DEFINE_PROP_BOOL("x-v-vmsave-vmload-compat", X86CPU, + v_vmsave_vmload_compat, false), }; #ifndef CONFIG_USER_ONLY diff --git a/target/i386/cpu.h b/target/i386/cpu.h index b5e2d88d5d5..4f8bcbe600a 100644 --- a/target/i386/cpu.h +++ b/target/i386/cpu.h @@ -2339,6 +2339,7 @@ struct ArchCPU { bool tsx_compat; bool spec_ctrl_compat; bool bus_lock_detect_compat; + bool v_vmsave_vmload_compat; /* Number of physical address bits supported */ uint32_t phys_bits; -- 2.53.0