From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <010701a135f2209e-c7f6071a-a8ee-45a7-9e01-4c7d4d8fc0cf-000000@eu-central-1.amazonses.com> Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11022078.outbound.protection.outlook.com [52.101.66.78]) by lore.virtuozzo.com (Postfix) with ESMTPS id 2C4948017D for ; Tue, 13 Oct 2026 15:47:07 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=TNCdNs4of3HJxhVsICsdBXiPG0aX2vS1tRVnvh3PAKFvbN5gcH8z56eU+dR/eBiBKB5lB/GPt29qtdzTewLEEQ6uboPbZOXaa5qtU2cqvEulHIHFaaCW2Sarpr+zW8ZCHofsuGDcr+HSiGo17dWwojqC2I1OG61lnb30UYROnjln/BYoZN+T+PA6Yf0sbk+P7mQQMEwkLBD17ZwhTVjTDILFpq3f3aRLvfZkfS4N3RcQhz6YQQ83upV29lyxrvq1ItRZN8YPg8ThwDncVZB4r5wTkUXESDhtCU7OeJqsFT9hNM1XRpFBMRQl8Uvk1zi3JhhA9SoWI4xn+LwhCbaolQ== 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=fgN2tMEyUZl+53EjMroQH/hbCgFaqaQjuoeKvzif5AY=; b=hAI3WZhO8lxzzSiYuSF1kAn9KcD3fVdFKTPobLkPQJkfkNoyj/o/kGzH+mSo+su3NgJIy8goUFMz+h7IWED44kdggPY+nKf0xB/tr1QHmS9ZaCZFHzmpmmKKfeN75XWgkAKBUktq6q+PYUa8F/Wnt5WGabTSN3EltwAPXILa4rltDoP1PjshNldeaQl0a5PK2ObcP6/1dnN+eLsbq9JFXhtHjpryTcTQiGaD6yUvCxWf4aVGSiHsjfxNVP+tcwraEeXlghYxYE4nI/cGEKGfNl/x3oqAIl4jY2y3+O/+bKsI4c1yka4g+pZiqebTQujxJRM+Fga3Yx0ZbjCjvNOAZA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 69.169.224.1) smtp.rcpttodomain=virtuozzo.com smtp.mailfrom=eu-central-1.amazonses.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=sashiko.virtuozzo.com; dkim=pass (signature was verified) header.d=sashiko.virtuozzo.com; dkim=pass (signature was verified) header.d=amazonses.com; 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=fgN2tMEyUZl+53EjMroQH/hbCgFaqaQjuoeKvzif5AY=; b=Lp4hRNKksWfPl6K7iV46xVqrNVPrUcny5mEP8FZEz1P4fgNJp9tpMADvM5v78AMbaLkSr/kMR/kPMMQZ2wtfLMIQ5UvOUyjFgyAwDbVJzL/1jv2l6Hr/IF7okSwCnZOrXf30/D5KVeHxMf/I7kuq7gmfHe/YerKLpYpIHX5Kqqw= Received: from PAZP264CA0101.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:1fb::12) by AM8PR08MB6435.eurprd08.prod.outlook.com (2603:10a6:20b:317::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.472.15; Tue, 13 Oct 2026 15:47:03 +0000 Received: from ZR1PEPF0000E6B0.eurprd05.prod.outlook.com (2603:10a6:102:1fb:cafe::41) by PAZP264CA0101.outlook.office365.com (2603:10a6:102:1fb::12) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.496.5 via Frontend Transport; Tue, 13 Oct 2026 15:47:03 +0000 Authentication-Results: mx.microsoft.com 1; spf=pass (sender IP is 69.169.224.1) smtp.mailfrom=eu-central-1.amazonses.com; dkim=pass (signature was verified) header.d=sashiko.virtuozzo.com;dkim=pass (signature was verified) header.d=amazonses.com;dmarc=pass action=none header.from=sashiko.virtuozzo.com; Received-SPF: Pass (protection.outlook.com: domain of eu-central-1.amazonses.com designates 69.169.224.1 as permitted sender) receiver=protection.outlook.com; client-ip=69.169.224.1; helo=b224-1.smtp-out.eu-central-1.amazonses.com; pr=C Received: from b224-1.smtp-out.eu-central-1.amazonses.com (69.169.224.1) by ZR1PEPF0000E6B0.mail.protection.outlook.com (10.167.241.87) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.522.6 via Frontend Transport; Tue, 13 Oct 2026 15:47:03 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=23yjbh4k34hwzfubhuiim7m4inbd3ick; d=sashiko.virtuozzo.com; t=1791906423; h=Message-ID:From:Subject:To:Cc:In-Reply-To:References:Content-Type:Content-Transfer-Encoding:Date; bh=yijWybwvMbsH2qBlIRF1/Tm9lTlJVeWKgHx8R9B9nxM=; b=p6eSXFvlylGtDnzRZ/jaLgWX3RifEBUy1uW9nV5f8HtxXI9nl6fUdFfQomI2sxIj 0IhaC3ja7EZ6FbaqbQFKc2DcpNeZIcmbXFgBPX+TlaiQNk9jluuSz2PQF+3/zWDP2m9 u7Tsky225AzvKO0UfG4n1ZqH5RMmtuMSMfZdzdoYrLnwHG+CKhY8EFX9Jk+F+k7wg9U JGg3ZTQJpusBcckBjH+824IOuPwkO7IAWPiiDmbhIlwvgH3PV/mFNsp8Z7+2FBQLYG1 gPP3fH6PJXeLpWzUv8jWAC1VrGg0E0ODZ3+mJHViJbX9Z89NR7vhIGOs/F34Z4h+ycM WPeFzdYVFw== DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=qftdzk2dqsatjnlrq4r5brjbihpfcrsh; d=amazonses.com; t=1791906423; h=Message-ID:From:Subject:To:Cc:In-Reply-To:References:Content-Type:Content-Transfer-Encoding:Date:Feedback-ID; bh=yijWybwvMbsH2qBlIRF1/Tm9lTlJVeWKgHx8R9B9nxM=; b=BnmnYQEgaLFAVgpY/o6eZuph3mVmenxyeuGywkXZeOTKksTWoDezKs7yiswnm2v8 8aUiyY69eykJWYfbXLa/5YvAv0X6GnC4nSRyd/GbapuVOsxGtyyRwcLnfHEz57MJEfD hhXPa4JuEcIX7UJ1pGFsPpQoPAdckZtYnfCFumLI= Message-ID: <010701a135f2209e-c7f6071a-a8ee-45a7-9e01-4c7d4d8fc0cf-000000@eu-central-1.amazonses.com> From: no-reply@sashiko.virtuozzo.com Subject: Re: [PATCH QEMU HCI-8.1 v2 16/24] kvm: fix coalesced MMIO flush racing with kvm_close() To: svt-core@virtuozzo.com, Andrey Drobyshev Cc: andrey.drobyshev@virtuozzo.com In-Reply-To: <20261013-vfio_v1-v2-16-433455c0a294@virtuozzo.com> References: <20261013-vfio_v1-v2-0-433455c0a294@virtuozzo.com> <20261013-vfio_v1-v2-16-433455c0a294@virtuozzo.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Date: Tue, 13 Oct 2026 15:47:02 +0000 Feedback-ID: ::1.eu-central-1.2wRQJBpg9g1fGRYexx3dUuYGS25Bux+2TEOx72/m6U4=:AmazonSES X-SES-Outgoing: 2026.10.13-69.169.224.1 X-EOPAttributedMessage: 0 X-EOPTenantAttributedMessage: 0bc7f26d-0264-416e-a6fc-8352af79c58f:0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: ZR1PEPF0000E6B0:EE_|AM8PR08MB6435:EE_ MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: c0418a0e-5fde-4445-9807-08df29413a21 X-LD-Processed: 0bc7f26d-0264-416e-a6fc-8352af79c58f,ExtAddr X-MS-Exchange-AtpMessageProperties: SA List-Id: svt-core@virtuozzo.com X-MS-Exchange-Transport-Rules-Loop: 1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|32142699015|61400799027|48200799018|376014|9140799003|5063699009|56012099006|5023799004|4143699003|18002099003|55112099003|4113699003|16102099003|5113699003|261009223027099003|13003099007|10067099003|22082099003; X-Microsoft-Antispam-Message-Info: =?utf-8?B?RG9XYVVJa0ttK29RK2lqamhNejFkMmdYNlY4dTBLc21nNmY1NzBJaFRsUWJW?= =?utf-8?B?WDFHZlZjeVYvTkR1WmVzeVhtSTdkdGdhWG51QWZ1SzBwVjZGaE5JVHY1M0FY?= =?utf-8?B?d1J3cVlpbnBaSEpNdjZUZmwzQ3l3SVBadlBvdjFnRkE3Um1iWlo4Y3VsRUxo?= =?utf-8?B?ZTExaWhZZ0g5b3lLZ3NOeU9vRnVkaE5McGQ3WEcvbFlZVlFpZ1lRSjc2VytY?= =?utf-8?B?UEF5T0JiRjZuaDBzRm5VTi9XUXRsRkpteVNXVW80WDlGT1FmYUROTmd0dmV5?= =?utf-8?B?RStNajZTOTF5d2Z5UWdiQzhsUkVXd0JxNldmYjFVUkVPUmg1NVUzRmNjdlls?= =?utf-8?B?YTVrRzlUa25zclBWTlduZzNPZmNVQnFJYzVpZkkyeVEzSWpxZHBVQlBxR3Ez?= =?utf-8?B?MWFRVDNGU1NRRy9SVjJXZHk3cmtiTDJKTENwL0RTeHYxWVpQaklOQTRlOS9D?= =?utf-8?B?WkJmNFVtV1BHWnNyZkZydFVKQ0xGZGxVMXY3Y0RjRUlFc2NNakZaT1cydDJE?= =?utf-8?B?VGF6Y0dObnlQQmduZy9qdXpyTkltODdHNHYwVHo3U2ZxbndWbXJiUmpCR1Nz?= =?utf-8?B?WlQzVDVkTkFTRVhDMG1WSStBT2hXanN5VFd5ZEh3OUtNRENCVmtEaDczRlUy?= =?utf-8?B?eDBPSWNJODVURjZNZVlEVkE0VXltSkVpSWYvR0hkT25KdTEvSWJEeUE1anpJ?= =?utf-8?B?aFhDM2k2R0pGY1FtNE9GK1FtTDI3WFMycGFmc0pjeDdTQVUwUENDN3d4T2Vy?= =?utf-8?B?YWVEMzZpdDVPRHRUWlpPZGJvanNOc3BiODczeHpqMUtVZzFSS1Z4S0RFLzF4?= =?utf-8?B?SnJkV1pDOWJNSVBuYU9wTVZUNGZ4bHZJU1QzcVozeTRFMkdpbHFzUm1aWDdn?= =?utf-8?B?RE4vY1Y3VHN5RHZiRVRVeHNJVE1NdUtqcnNqeHFtbmxXbVRTWXRYcnVQNWZV?= =?utf-8?B?VHladFJTdHpmdU40NjNSSUZka1ZRREwwTSswL0lyMlVCYWRFaDZGOGtlRVU3?= =?utf-8?B?NUdRUnBVQStmRFljZmx3ZURzL3VMN0N0bnA2RnRPTUk4YVpWcG9jMXAzcmF0?= =?utf-8?B?djBlcmQ2L2VZejJqQVFkZW9BZXV5SFZuUEExNHo1TGlUK0pETHU5T1BXQW5p?= =?utf-8?B?MFRROGdyNXB0c3BnTkh0UUNLa0M0c1hIeGprY0dRZ3BKTWpHOUlOcVhzSTh1?= =?utf-8?B?QmwrQzlVUzdTTVU1bWtlblZCMFRWMDdDWFNhdTcvQmc4RisyYmxld0RuOHB5?= =?utf-8?B?ODV0a3JISmlXQ1Q2VFBCaDVvOHhsOEx4VVV6RE56VWw4TEE4Q1ZKd3B0UXNL?= =?utf-8?B?MVljMk9jbHdYalRLZ3BiZkhxdGZLZWE1Vk1DYStnTjBZT011dU8yN3FXQmlF?= =?utf-8?B?TnkySmcybTd0cVgrY2JURE1RZFZCTkFRS29ud0lEbWdGYlVhVnV5blgrLzRO?= =?utf-8?Q?hy8B2/pf?= X-Forefront-Antispam-Report: CIP:69.169.224.1;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:b224-1.smtp-out.eu-central-1.amazonses.com;PTR:b224-1.smtp-out.eu-central-1.amazonses.com;CAT:NONE;SFS:(13230040)(32142699015)(61400799027)(48200799018)(376014)(9140799003)(5063699009)(56012099006)(5023799004)(4143699003)(18002099003)(55112099003)(4113699003)(16102099003)(5113699003)(261009223027099003)(13003099007)(10067099003)(22082099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: lOjpayJKXq9ejx04fga5wB9D9BZcMMigYtxLRULUUQL0Fx+bGDXzGT6D21dvzibBsbnGK46bYQDbTXfRjxWm6TT4cyzaujj8Zlbd6PyFasUMWiEaGC3KaYLIvs1eVVOXD4rgW11Fkn6Ig85Z1rDD4NjzZA/FpMLc7CUVurLqv0dAVBuQbooSzHiOgyKyBaytocgHafEnq/p+Algn7pLzCx3ZLEZOh3WIqbP7+J+NIzPYScr47U2hqKudnEuyRuv3nvdgtpH8brw3TqOJarY07Zkc7kAL2E8GxbhQp3EnirH1UfgQnrJd+ELsu0OD39VhN/cOGkjd31zdVvYn5e/zJoQO+4+3JTXpH18f4qbVS0j4jXuXDeIKkAJiu1JpCnRhSpxkqeHjl75m0a8+OLeqABPoYP1pT+QeULqEDswtNgDZ/amv1O1yi1FSRSL3JAWV X-ExternalRecipientOutboundConnectors: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Oct 2026 15:47:03.4172 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c0418a0e-5fde-4445-9807-08df29413a21 X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-AuthSource: ZR1PEPF0000E6B0.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6435 > kvm_close() destroys the vCPUs, which unmaps their kvm_run areas, and the > coalesced MMIO ring lives in the kvm_run area of the first vCPU. Nothing > stops the RCU thread from flushing that ring at the same time: finalizing > a memory region of a freed flatview calls memory_region_transaction_begin= () > and thus kvm_flush_coalesced_mmio_buffer(). kvm_state is still set at > that point, so the flush reads the ring after it has been unmapped: >=20 > #0 kvm_flush_coalesced_mmio_buffer accel/kvm/kvm-all.c > #1 qemu_flush_coalesced_mmio_buffer > #2 memory_region_transaction_begin > #3 memory_region_finalize > ... > #10 flatview_destroy > #11 call_rcu_thread >=20 > while the main thread is in: >=20 > kvm_close -> cpu_remove_sync > vfio_kvm_device_close > vfio_cpr_kvm_close_notifier (MIG_EVENT_PRECOPY_DONE) >=20 > Seen as a SIGSEGV of the old QEMU during repeated cpr-exec of a VM with > a VFIO device. >=20 > Clear the ring pointer first, so that new flushes skip it, and wait for > the pending RCU callbacks before destroying the vCPUs. >=20 > Fixes: 7ed0919119b0 ("migration: close kvm after cpr") > Signed-off-by: Andrey Drobyshev Sashiko has reviewed this patch and found no issues. It looks great! --=20 Sashiko AI review =C2=B7 https://sashiko.vzint.dev/#/patchset/20261013-vfio= _v1-v2-0-433455c0a294@virtuozzo.com?part=3D16