From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from AS8PR04CU009.outbound.protection.outlook.com (mail-westeuropeazon11021134.outbound.protection.outlook.com [52.101.70.134]) by lore.virtuozzo.com (Postfix) with ESMTPS id 3922D8122D for ; Tue, 3 Nov 2026 13:57:29 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=j9abN1V/PeZKsGHWfRbq0r7pgnrDrky2ABbMNqwAz7QrlKLZ3pAjtvnAmalags/8xHEbS+ci9lM8CT34FBTM4TlGccZut9K7KJ7tDL7/OzDNb32NJ/vUPiWAr8VyPrbfko2xGcIAs1yVLH0rUugFJYuEisXxhijdaMifT9jNw5JEdWhdmh3wsDKbEXePMuRV0yjl57SUHPXO8LnGBhFecD2O7nOwgyOHNakFPiwM7X1AjJJgMz+ASogUbVMkt6RXBO4g3sV4OvC68WKhpNfvn6gm6cqzEkAioEeDKud52gt2qbpXLw3EfXJl2up8alosYQb4/mXnx8IG38myYVEC1w== 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=PMpGwyL57S3HPXGtAaWBwbyW4ORs2WcTGLnU20+wh6o=; b=jTCIhCamXFFKgBQ1fhd91jvCdVqhtiFbocizeFFCU4g5QSdUV3rmJJIwxxIqdqWaYktLTiWU7dVqLz2ckanpotkQBVQ84Q6McgVS2nvRGk6J1FBQ/zHq2xpQprKM0DnjK2HVpdleTh6X/Y6DOtrKq9GB1jczxRfbxCf6ZISW5N4tCQ1mmB9SI72ws1yW0DSurH+H/jieBMqNhtPYEhuF1YwkZqCg7JUdShiI3KYkND1B8M6QhoQkBSvO/uzvabwWo620DmwIFQ834SwaSUIQNZ2WstfuMbe0TrIWxuHTc4Ej7UhR0tSXuFDU/uWR52LxbFwRP8p54Zcjw5E2XJYFDg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PMpGwyL57S3HPXGtAaWBwbyW4ORs2WcTGLnU20+wh6o=; b=bYr60McR05wRmiXsARNv8SoH85v6D2+FQgccVG12h3eTh+eTEcmMxL2g6cWmrdIPZu1Ngi7k910OaRHEDVyyfBaJ+a450tjXZReJ1skzljTGeEdRNNWHc7zpbm5sJ/BPcXzzYN6TEZDwpwADS2YudPdZ7FJUyJVCHk8Whh/5TV9UCmuI6JEuG0jA/dVYYaWQE4JkLyPKc2GlQFUsb9R7iCVKzazly1/S2v4qcLPYlDvbgJngXrCp/+JX5ILgiyQfJ0Akb0mm6yWU/X/sWSj6sMHOPfmtYebPcKaA9GIGxYOOfYWTEDzJRpvlQSoRYzGT9VKfEwjJKxn12xWlW1eiig== Authentication-Results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; Received: from VI0PR08MB10656.eurprd08.prod.outlook.com (2603:10a6:800:20a::12) by DB9PR08MB7423.eurprd08.prod.outlook.com (2603:10a6:10:370::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.569.12; Tue, 3 Nov 2026 13:57:26 +0000 Received: from VI0PR08MB10656.eurprd08.prod.outlook.com ([fe80::4e37:b189:ddcd:3dd8]) by VI0PR08MB10656.eurprd08.prod.outlook.com ([fe80::4e37:b189:ddcd:3dd8%7]) with mapi id 15.21.0569.011; Tue, 3 Nov 2026 13:57:26 +0000 From: Andrey Drobyshev Date: Tue, 03 Nov 2026 15:57:17 +0200 Subject: [PATCH QEMU HCI-8.1 v7 02/35] migration/cpr-exec: restore RAM write access if exec fails Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20261103-vfio_v1-v7-2-4467fdccbbe6@virtuozzo.com> References: <20261103-vfio_v1-v7-0-4467fdccbbe6@virtuozzo.com> In-Reply-To: <20261103-vfio_v1-v7-0-4467fdccbbe6@virtuozzo.com> To: svt-core@virtuozzo.com Cc: andrey.drobyshev@virtuozzo.com X-Mailer: b4 0.16.0 X-ClientProxiedBy: VI4PEPF00000153.AUTP296.PROD.OUTLOOK.COM (2603:10a6:808:1::86f) To VI0PR08MB10656.eurprd08.prod.outlook.com (2603:10a6:800:20a::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VI0PR08MB10656:EE_|DB9PR08MB7423:EE_ X-MS-Office365-Filtering-Correlation-Id: 511a666e-067b-48eb-55f8-08df39b26419 X-LD-Processed: 0bc7f26d-0264-416e-a6fc-8352af79c58f,ExtAddr List-Id: svt-core@virtuozzo.com X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|376014|52116014|23010399003|18002099003|22082099003|38350700014|56012099006|261102123227099003|261028144727099003|261026140227099003|261021121427099003|261022105027099003|261026121527099003|10067099003|5113699003; X-Microsoft-Antispam-Message-Info: RGWH48jHZaliMnpVMpIl9yjnlIoquxZRtt257AhWjMiEQS3sRK/KzxoXkw4bBogsH14e06NvVGJSTGMDcaSO0tHLx2ICUUi8V87luqNbVYco4M7FVBH1anvDSJZOA9KoFtjke/8N9S1PXe1yhNuhHtrJgc9JkXU4IT1XplzEy2NUFzy7bcmH6zQgVW0UvLbt3KaJKfXyq10BV4TWfcxwPF23GP5NorMjn5lLhunqpoijI3h7w5wMjE+g64DOuORIE+XQ6Rpo0lndRpZkSVtqf5Zcj1tAHztgv0f6pY2fw/dncbHsggG+zM+7VoJw2e9+6/KRhtEH24Yxn7cYRyf5dP9ItOR3j5sDrwgmTqXhkUJJhKh95K6KZcVV70hKJV9zMkWakAPKbFiC8Qszqi3R0h3jNrM9tG79UTA3a0gPo1Bw5hBNpUr4AUhgk8BY6qEnqHUf99xcEGA+8SL8+QhoePVU4y9S6LfeEOEzTadflUY/eaBlp5CMTTe0slBBIikCSoMXxbuWP58eBV+sGeP8zV5Xx/s0TJCJVt/Re0mht7avYMh6Tpdm/w4xnwC/zcuf7/+cQkDc+uJK+zH56oKN+JYT8RfOH+Gq72WSHiD+pdpLkh9WgZbpBJHKE6aPwvC+Cie6MpgrOIgYW1zahSZIDbcA7i4DAdFpAX8D1xd2DUbCcjWy7gq4mblm+r6O9s7k3asQmkKTzv0ect/9eXU3TAoSYs0luT7Y7AlJcwXjleM= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI0PR08MB10656.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014)(52116014)(23010399003)(18002099003)(22082099003)(38350700014)(56012099006)(261102123227099003)(261028144727099003)(261026140227099003)(261021121427099003)(261022105027099003)(261026121527099003)(10067099003)(5113699003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bklvR3NsTVBxd2hTVkliZjM2NXgrdVZ2VEIyc0trVVU3QTJjR25leGtZRHcy?= =?utf-8?B?N3QvUlY4ejVGeFh3VmF5b1VsYTNNVEF5NFh2bm9LQ0tWTlpwMGY2Z2d1RGZT?= =?utf-8?B?QTUrT0FZQ0RBSHdQZWRjQXlSNDVrZ0NTdHdFZ2pteHhtV3ZFQTFRR0JYa3FN?= =?utf-8?B?djNvYmxjeXF6eTAraUZQVlA1TExyQU0wNlZVNEJzMHI0aXJneWhFWTlzY0ps?= =?utf-8?B?eExpSFJobGpBMVpodkZ5bEN6bmdSK3NIMUpudzAwYThJUWJ0eWVHNHNLbW9z?= =?utf-8?B?VGtlQWk5YndUWTFJSmx0RWVlZkUyMDVLeUVxMkxXajBIWUJydTNtZyt3cUxQ?= =?utf-8?B?RWg1bG1UaHgxaisyZDJxa1ozYzJHVlRHOEFVem9Bd0dqMmFEQ0YrdVZjUFpj?= =?utf-8?B?SVVzb1EramVCZGdZcVoxQlJQdE9hN2ZOMUZPSzZQWm0wby9HQkh4RmxPKzNp?= =?utf-8?B?TVQrRXdxZDhJUXBZWE1XZjdubGcrU3dyeCtkOVdOMVkyRGREaXo5b0xWdTJU?= =?utf-8?B?OFRQL1NBbWIrc1BnYzJyZVkzWFVXUFNGenRSZTNQQmNXTXltK2NOOFc3VENa?= =?utf-8?B?NjRJUDhjRzBtZ2dUKzA3UGMzcDFPNlBjbStrcFlIUXduT1ZGeGVwTE10ajV1?= =?utf-8?B?WTBKSWVxTGFoVCtDMG5yZlB4aFJnbGR1TGVZVGJOREVwSTZna0JPOXBxaGda?= =?utf-8?B?eEl3SUhUTDhhdjk5d0RvYmZ1eWIycExzNDcxbzZCWjlKZXRlTE9XWmZmSkVj?= =?utf-8?B?aDE4cFVkWlQzeElUbnNCZVRVYlg0MWY4YkhMeEE1amg4QUh4RkJ0bU4wWjFN?= =?utf-8?B?dG1tM0JpS1VJN2dnUVFLRlZSa1RqcWU3U3hEZHZmNkQ3a2QzTTlvanRXRHdv?= =?utf-8?B?WjJ2QUJCa0labWJKUkFnVVlyRC85aTRjNGhyUzFueFJpcmF2Z1FMblc5d0hU?= =?utf-8?B?VTVXUElKaThPeXc4QnJIbGg2NDMzYThuWEFmMXFsLzcvcWpxYWVGb08rSGFk?= =?utf-8?B?WUV5K0xBaDJoM0EvOER5MDQ1UXdtcXlnYUhaMGRVV3ZyYTY4WGdsMlpCTWZK?= =?utf-8?B?eFZoS0RHWUMvazlWcTRHYlpCQ01nZmFibFdNSFB0OWVWci9ybHYxeVVMbGxv?= =?utf-8?B?N1IreldVNDl4dlFadFQ5bWVZUjBZbzk3Q1cwcEROQi9QNWZhT1hPaDZSSUUv?= =?utf-8?B?bHNtcy9vQnFLSCtIMFhHenRHcWtsVk5Cdnpiamg1eVlFSlBwZFlzTFhEYlZk?= =?utf-8?B?cU9teFhuckxXZ2N5ZjkyWDhmMHdmQkFUcjJPN0ZzSUtOaGpDdExzWEFWNWI5?= =?utf-8?B?RkxPeDZGL2RMRDRUZk5EQ2JTUlVxZmlGdHlrOS92N3kxalRsdS9vU2QzbTBP?= =?utf-8?B?MlNoU1p2TG5oN0pZbTdTYlJzeGVnR2phQm9WU01QNnJ3dWJiUXpoODd0TEFF?= =?utf-8?B?dVRyOGt6dUIwcHZsK2xaRGVRVHloWjdpby8vVnpZYUR5Z3hxalRoQnBhTkN1?= =?utf-8?B?S2Z0b3hQeVhnZWhBZFBDOGVKQ00vME9WQ3ZlYURJNGpsdjk5NFU2NzByeWky?= =?utf-8?B?Q3FTb0piU0VWbGxFRzJDZUprUlBYWmZpMzgxRGNwVERJRXJzV0xwb3FRNUx5?= =?utf-8?B?UVRDSkVycnJldVVFdTZERGQ1NjgweW9BNy81SVlUVS83WnRmNFhkanpKL1V3?= =?utf-8?B?MkZ3V0M5N3kzcDlQdDdvNGlFNW96VE5GNzVmcWVnTjFkV3BYZ2xlSzNRdlRq?= =?utf-8?B?RHpZeGZIZ2hsRUxqaHF6dEYxQldLU3Y3NENTYTgwbVJpbXh4R0o4VnZMdEFn?= =?utf-8?B?VXVqbm5tQnc5WWxZOUJDOUxCUU01dVFDQTBrT0ZqNGp5a1lUT1RtS0hYdzRP?= =?utf-8?B?WFBWbDZUcGg1TXNoU04zR3dpTWRBT1JhR3JaNzFtMXFlbUtPRFVwQmU1NzNX?= =?utf-8?B?akh1V3hQOHgwUkVUZlhoMkNmUHFnTTFSOEdIbVBwcDVmSVFFY1VRMW5FYk5i?= =?utf-8?B?QmRIVExndlBCbEY4S0c5bkRHNitpL3VRanlpcXRYSVFIL0FiVW5VMGhJdEZ6?= =?utf-8?B?cGk0aFhqdWwvd0QraFBoZ0FYREE5WFpHeTNZREd3Y1Z3UklQTUhVck9Ka05k?= =?utf-8?B?SlhJbDBpbDZZSE9EWUwweTQzNUx0eVNKRk1QTGRVa25XOTQ5c2E1Q0JQVUt4?= =?utf-8?B?Q21uNzRvZlRsRTQ2RVR3ZzZGd2RvcnpFNzlCdndVWHp2c0UyKzNNWU5BVzJ0?= =?utf-8?B?K2tXbkIrUzV6MFBSWGpsM092U1YyZUZUZU5QSWdPRHZKZDlRQ3VraUNXSjhV?= =?utf-8?B?QlhrRU5QWnN1YVVCS2ZOY1l2YWkvUXdQbjFNZWpmZU1CVjBGQjJBZnNpYnlU?= =?utf-8?Q?kZI39wVckcSCxxbo=3D?= X-Auto-Response-Suppress: DR, OOF, AutoReply X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 511a666e-067b-48eb-55f8-08df39b26419 X-MS-Exchange-CrossTenant-AuthSource: VI0PR08MB10656.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Nov 2026 13:57:25.7610 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 0TP9/Tcq4U5qTFKUfZA4uLJ9ictBn8nQNap37msAeJgm+zjSuS3aRV0xR8WnbzPoS6U+zJBFk7xbFBiDAOE6xZ6qI9TlLeq4TMMrxo5Epzw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7423 With -cpr-ram-rdonly the RAM blocks are made read-only right before execve(). If execve() fails, the VM resumes in the old QEMU with read-only RAM and crashes on the first write. Make it writable again. Fixes: 91da25f20471 ("migration/cpr-exec: add '-cpr-ram-rdonly' option to mark RAM blocks as RO #VSTOR-101579") Signed-off-by: Andrey Drobyshev --- migration/cpr-exec.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/migration/cpr-exec.c b/migration/cpr-exec.c index 9fd3515753a..c4bdf2cb99f 100644 --- a/migration/cpr-exec.c +++ b/migration/cpr-exec.c @@ -224,6 +224,9 @@ static void cpr_exec_cb(void *opaque) error_setg_errno(&err, errno, "execvp %s failed", argv[0]); g_clear_pointer(&argv, g_strfreev); cpr_exec_unpreserve_fds(); + if (cpr_ram_rdonly) { + cpr_ram_restore_rw(); + } error_report_err(error_copy(err)); migrate_set_state(&s->state, s->state, MIGRATION_STATUS_FAILED); -- 2.47.1