From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from PA4PR04CU001.outbound.protection.outlook.com (mail-francecentralazon11023115.outbound.protection.outlook.com [40.107.162.115]) by lore.virtuozzo.com (Postfix) with ESMTPS id 67EE18013F for ; Wed, 23 Sep 2026 17:31:21 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Br76Q6d4flEj7yAfz1wJkuv7X9SLzV3PoPd0U9LeigiRr4NrDBS9xec+NFXjZVssLRnSFzfdGlFOxHlAUd+8WB6vBeqkS8qMwLDvDJhyNzwgPhuVGCh+1LGBL1kN93TRlEBhVblUnEK7dRynf5X5tTD3GdQEXSaQ6KbPdj5DSp9hxHHVRu7cbJcX36wmUdPZcgiF8Pz/l458E2UPtXcBoH4I24RrEyosB7fCOkeiAXx7ZDMfVKcURmuXXnj8ZF3eC8rhUho+eMpHbGUGUAmAtRIEYQtlTQkx+XtWvocS8naY+/u5Q2VJRwxngeUXYSKmqzcisSYTHJPQeRM3kGVJ/w== 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=taOJJjsQVxsrQy8yD+eigkG+HE9uQUFjamS3+NynsEg=; b=BWtbLdywFUSjku5G0BuyUV6AwJKIVYxg/xTmIm84TjvpTEVIwlh3Ntm/vQ7RvGR8DUj5QYcFYUsRxWXzbEYcwbiV4fgkeL9Z3CVeX8fj3RIwqyAKQmtoHIeJX+IeZwPOxvodDd8iQbEoHJVn5TUeVemPNj44hbAW7B9h0h08zvHpfJzcmdfXz8mvKL6YYZcqAV5Sh1bJQk/GgynbO/HdbObof7eV3cG96MI9g2xO2EX6jsWRl8evhiFWLT+NKC8EVQBstJllt9k8Ey7CYv9ju6S013SoVFFVqD9HHJGkGAHy3705ORzTz44MRPynz3Lcfo5/nobdDWchy/EkBvysUw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 2a00:1450:4864:31::11) 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=taOJJjsQVxsrQy8yD+eigkG+HE9uQUFjamS3+NynsEg=; b=dN6EKD85kCFrqvT6z04Ngx3ifprkiJpzJvWdpZR+5O3lPdKImOUqCrOAxv/l9Vu4SABpy+yFnFYXBkXK2GGmt2ApKlXzSCZHEn+MF2kQKYdq7JQ3ce6zP4JLcGpGjvavPDh3FrgsqrdWunnxonsmaHQBEMzi0j1rdBuX+3PvpYQ= Received: from PAZP264CA0213.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:237::19) by AS2PR08MB9473.eurprd08.prod.outlook.com (2603:10a6:20b:5ea::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.451.17; Wed, 23 Sep 2026 17:31:11 +0000 Received: from MI3PEPF00008552.eurprd05.prod.outlook.com (2603:10a6:102:237:cafe::98) by PAZP264CA0213.outlook.office365.com (2603:10a6:102:237::19) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.451.14 via Frontend Transport; Wed, 23 Sep 2026 17:31:11 +0000 Authentication-Results: spf=pass (sender IP is 2a00:1450:4864:31::11) 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:31::11 as permitted sender) receiver=protection.outlook.com; client-ip=2a00:1450:4864:31::11; helo=mail-wm2-x11.google.com; pr=C Received: from mail-wm2-x11.google.com (2a00:1450:4864:31::11) by MI3PEPF00008552.mail.protection.outlook.com (2603:10a6:298:1::86) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.451.8 via Frontend Transport; Wed, 23 Sep 2026 17:31:09 +0000 Received: by mail-wm2-x11.google.com with SMTP id 5b1f17b1804b1-49ccf3ca626so6806695e9.0 for ; Wed, 23 Sep 2026 10:31:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=openvz.org; s=google; t=1790184669; x=1790789469; darn=virtuozzo.com; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=taOJJjsQVxsrQy8yD+eigkG+HE9uQUFjamS3+NynsEg=; b=no5J6iTJUwumvoPWPQtfByX1lKQKlmXbjX6cvSupKa7TuCLSJibIix7mi1tM0VKvJL tcF8Ze2CAlWA7GVc44C+FXcQdvSgh3TzbH0zy8B50mS/InHBxFm0KVrsJZ8uKfwTzVMg scv3l9RHeHEvWoHokzbaLzS2y2i5mem2yw9MdTcjg/q8NslQ0RVdHp7Zt0aochMRWX3S lyDqJCXyvucSbEr5s/TVI7Ik4/gbPIxZWZDeK7YHSFChjFjSoL7IQ+IkSZALr1FaggvR fPgRP2MiRzX7BnC9DkP6IFWxpdw5dU+u1jY7OknvdHp6y4/7AKpXahlQ445Bid3W6um5 EVLg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1790184669; x=1790789469; h=content-transfer-encoding:mime-version: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=taOJJjsQVxsrQy8yD+eigkG+HE9uQUFjamS3+NynsEg=; b=xdoVyzn6vhjOdJH0tIzOc9T4GFEAiY0o2eTD2Djx2FfYtSRI9gw2dsSb9P3DOM0syQ bBGRhtRk5G+0kwQYpnnovHpcMzBl1DlctOTj8jLRM80Nj27V5hIJuHZAg+anp7fwI0mu GMHbtJ4BrJa1UkBVnYsT5uzEjZ7qsCoJ3em0E1IUWGlB4tKku4Pb7XAShDh/cE/JjbwL agluY5S+T2TAWAr2X/UVDdBbFV8TU4+dAReh9r6Wkx5BCjATb/Z8DOCHpb0fiR0qx+7r nuTWhY+4uDwBEbHzwKiLZ8Vc0azawKkQ+rCWSaiSBm5Hsz8MwJh5t3kwriz0X7526yAT zr/w== X-Gm-Message-State: AFuF++mE9/mr1A06XqL4bqzlOMkGHFGlMZeSknz9h16IvIjduLb/9bK0 MvUqHB8N1bGHByupjRncgjz6+BclwQCLN3D2hBJcsxqV9XY1jHoy4yTK0IclPEcQtyU5elOexa4 EZcsC7SI= X-Gm-Gg: AYBFou1z5h03QoBH/Thf1RIeXPrdDIYiFmwJTYQwcGZ+/GuQiECO+p+ErcCumg7YJEt tfNpKBQnIELUpgxralSgQpWrRYFHEAbuWkT8qMgHfOBPe/fwix5x6tuh9+scHWMdewBESGn+Dvy AX+kW9XRRsHrvWuXxk6dyHeANB0xmtWlVUPV9ZG6NhsVkBDUWyu/8/eY6mrSkWZnh+o488HZ7pg DDXXfRGouVkcKUDqcBJERiiTXqI0BGmaJTKZ1Veri/3/fJ8VQQvPwJFbS8MMRCB185WQI1iBdBz dcawaJF6gpA+FVTKOezw1ru2r1Cygc3Cu4ahBYWo5s9pNXtsDflhmeHJzif7zjIX9Q0T7HfWNa8 pnEu6wr1pNmKGFPpziRwRZXyPEoTYfXOQa692fE+sgoYAPJZ0YJGoHJrTvr6GxFpVsWQsLN/fBt HgFjqNjB+EGCzx2eQiJV35jrVpBkKXvSVsgp3284pjjO89/H/9wOwU6A+E6ub3b+ikjoji X-Received: by 2002:a05:600c:8519:b0:49e:7d25:f397 with SMTP id 5b1f17b1804b1-49fdf100908mr54595315e9.15.1790184668612; Wed, 23 Sep 2026 10:31:08 -0700 (PDT) Received: from athena.sw.ru ([2a06:5b06:b600:300:5498:c008:c73e:f9b0]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49fe5bb9891sm1667095e9.6.2026.09.23.10.31.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 23 Sep 2026 10:31:08 -0700 (PDT) From: "Denis V. Lunev" To: svt-core@virtuozzo.com Cc: andrey.drobyshev@virtuozzo.com, "Denis V. Lunev" Subject: [PATCH v2 hci-8.0] hostmem: fix live update crash of VMs with bound guest memory #VSTOR-147016 Date: Wed, 23 Sep 2026 19:31:05 +0200 Message-ID: <20260923173105.3576937-1-den@openvz.org> X-Mailer: git-send-email 2.53.0 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: MI3PEPF00008552:EE_|AS2PR08MB9473:EE_ X-MS-Office365-Filtering-Correlation-Id: 8246b83c-fe63-4c04-f277-08df199874be 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|43022699015|9140799003|61400799027|48200799018|6059299003|82310400026|376014|10067099003|56012099006|5063699009|6133799003|55112099003|16102099003|18002099003; X-Microsoft-Antispam-Message-Info: WOEFkHWnHI7B0/y7MO4sOyFbJefRhUDgfe6cdVdJxe1ix+lmEAl9OsJnfV0LnakSaqsV4xUr7LAXOqiE1MdDEgrQRGnt16JwSPVcyziSzM/s6D1cmcMLIB5NizNwNoWaJc+E9Hg58t1RxG9CfjMq6KxVee/mVa8xvuaZ3klB2IgXWvoL4WE58MY2p5/Dz1E3w7S294Sh4VmFeK9QIFsyV9QUV4Fco7jsmaOTPB/ITqWzgk9DkXQlW6GFO2EyYnvua7qpAymggUWjwsg9p36s7WeIsCuaaX2qVJbiKopch65zlkjGc4GieLyltbeK6OvZGjqSXLWJyQ1lgLvSS51EjGGyuJQS5Jr3HuVs0/M54Yvj3vxmHb0wsThcvZRQPNgFRO343waQeZjbyVAuQXqnZzK3mFExakGk2h60Iny/ariqX+0+Bjo/WlVyQSeSBohIJ1w2024lQ8rt0uu2IzJxZ/JaskB7o3j8hh5asI45g/Rv3ZkQKS/Y3A92lR0pIoORtz2hGLYI/i5X9KTpg2gJ3OmD/MDQTguUi3aCCAmtH7/rcS1+HY5sga3rjmyCJMjLjee6XqmYWj7pDhA1uFmFHHpCEd86Un0qQdiBEFGT5JBFkRtfkU2SImtJmNuhUDYsmxduBwSuDu+6PNKXTKySzqTozX8syRtE9Hts2HXnFq0qcOEYmhEr5W7MFU4ii3oSsYm9HoXt1auYjnATRmTqXSXveocf0WBOyQ4GfqZYQzdnB9hUVXEE/1kG7HCo716H7gM58Yhuy1ppxtE5ciO8JXCCDAia50qNYuJVVrW/3wgVSZdwJ98w0gk3kWkDPOABwEKapug53olH8outHkMqpA== X-Forefront-Antispam-Report: CIP:2a00:1450:4864:31::11;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail-wm2-x11.google.com;PTR:mail-wm2-x11.google.com;CAT:NONE;SFS:(13230040)(704161411799003)(43022699015)(9140799003)(61400799027)(48200799018)(6059299003)(82310400026)(376014)(10067099003)(56012099006)(5063699009)(6133799003)(55112099003)(16102099003)(18002099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: fidced0sPj3aRxFi2b++ZpDsW5DLv+E7YK7PqzzadSAnQRuum0ok+ZE4yJk8ICzpG4zJwEbaWq79JppvQbAmZJEWQAYYy86Ed0hac/KuHUl8uJOGbBpyIOXgE2/G5FPpU/UgpYYHb15KsZQV4HiM9hMWb5XMPUlPSMJqjLNhPH5XZw3AFh8CYCWwpUaf4jbvoCnC0x3p9otPJHsRlU3V4h6gTQB4qUvC1HK2QA/zrcqPCQuPLDLO+hNgt3QIVs2we8DqJ+aGWVfEnZmI1QcwpdLPZPpD8w6zZ/xJyyHbkGXf3WHpmLBdl9BO1S7lxFiWNdoI6sLqoy3Fd8Jn8Dmbk4yZvZL6NMs0yeQbLKDoeiTXiM7GfdgyBONMqpUJRdquoENaRxia59VFXjU/qJ3KnnenbO5TCg3d10rmUtJX5691hujTJu80DtQeqJ6tnZr0 X-ExternalRecipientOutboundConnectors: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-Auto-Response-Suppress: DR, OOF, AutoReply X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Sep 2026 17:31:09.3323 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8246b83c-fe63-4c04-f277-08df199874be X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-AuthSource: MI3PEPF00008552.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9473 List-Id: From: Denis V. Lunev A live QEMU update kills a VM whose memory backend has host-nodes when the emulator cgroup no longer allows those nodes. The old QEMU saves its state, the new one exits during startup with qemu-kvm: cannot bind memory to host NUMA nodes: Invalid argument and the guest is lost. Guest RAM survives cpr-exec as the same anonymous mapping, carrying its pages and its memory policy. host_memory_backend_memory_complete() does not know that and treats it as fresh memory: it calls mbind() with MPOL_MF_STRICT | MPOL_MF_MOVE and preallocates again. The exec keeps the PID and the cgroup, so if cpuset.mems has been changed to nodes outside host-nodes since the VM started, mbind() returns EINVAL and QEMU exits. Where it succeeds, it only walks or migrates pages that are already in place, while the guest is stopped. Skip the NUMA binding and preallocation for an anonymous backend on incoming cpr-exec. ram_block_add() refuses to allocate anonymous RAM in that mode, so such a block is always an inherited one. Backends with an fd get a new mapping after the exec and keep mbind(), and memory added after the update is back on the normal path. Suggested-by: Andrey Drobyshev Signed-off-by: Denis V. Lunev --- backends/hostmem.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/backends/hostmem.c b/backends/hostmem.c index 35734d6f4d1..bb7f0c4c18f 100644 --- a/backends/hostmem.c +++ b/backends/hostmem.c @@ -22,6 +22,7 @@ #include "qemu/madvise.h" #include "qemu/cutils.h" #include "hw/qdev-core.h" +#include "migration/cpr.h" #ifdef CONFIG_NUMA #include @@ -363,6 +364,10 @@ host_memory_backend_memory_complete(UserCreatable *uc, Error **errp) if (!backend->dump) { qemu_madvise(ptr, sz, QEMU_MADV_DONTDUMP); } + /* Anonymous memory is inherited on cpr-exec with its policy and pages */ + if (cpr_exec_is_incoming() && memory_region_get_fd(&backend->mr) < 0) { + return; + } #ifdef CONFIG_NUMA unsigned long lastbit = find_last_bit(backend->host_nodes, MAX_NODES); /* lastbit == MAX_NODES means maxnode = 0 */ base-commit: e8a73d39faf578d58aa2c4b4b024226796c390e6 -- 2.53.0