From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from AM0PR83CU005.outbound.protection.outlook.com (mail-westeuropeazon11020123.outbound.protection.outlook.com [52.101.69.123]) by lore.virtuozzo.com (Postfix) with ESMTPS id C24FB8017D for ; Fri, 9 Oct 2026 14:56:07 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=dlg1yQH7ZGDKhueedfB14Isa2byMVN3UDI46enZxYTiik0X4Ynt5LiBeqL/X7HPme+peGMyI7TmTgRy9zQMqWyNPPB1Q2oDiNY3dWlVsiCkQCVqgDBzJU0yj97O1++8zvd5zNq2+OzoawXj7fU/yt2hJsvrmlSILqzaLZmippqCRksKTKNzKDIG8p2Kguyih319tIupIv6deu4q5OfiGCw46zwvEYlGG4XH42B6Jvtyz3CfOhTQriQ8nWd+qXCp5SqqHdCHdi5fRQLUMw3fah15JdeEI1h7vrtH7TVHS6geT26p8EgDDnh5LPGooE41J7MxG+e/KDnmd0MqnZ3twjQ== 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=bq911PWZEiXqvefVuFR5szhULrot63bm2A4qtn51VyQ=; b=F3vGmGPRFVpSQVXfNUuu7vNT4TsxglhEyq7xSznNPDpKiRio7FcXantLvmi9CUS483d28gIawdkMmqkmD/HYh0RIgOIWi4hCu5pOFExSzhleaPj7dw8zUforkXtusBIIuQrh2Oj8wpOP6D1TCcJQ+4GDgvamGZwMZUVELCb4dyPAOYPzP7wnJrcGZfbUjKlHFubnzL7D//xbo3I+bozCYlY3jsGlleP8b2+Bq/V19ipbzZmGAHhW3MxXv3F4lFbV2RwjC31B9DOQBIdaWFrT4tgYey3gdX3xyiUSwAg3eOkpxtCV8SDd4RobFk5DBaLogqOsh7bEVNgh+eNMIStZ6Q== 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=bq911PWZEiXqvefVuFR5szhULrot63bm2A4qtn51VyQ=; b=nYuNYovt5w4Ytzxhff3P5lPLTsb/bp7KKzK1EUsdpy9StDjsxFsiAx8Gs0OSp87LvkwjfHudiBhPTG7R+NM4KptSgXKhatsDqAUQtf50+GvydKCcdS8mh3vRyCHk8Jj1LgPS2NrmKwOMg+2tJcY8rjQCjOMQP9ntP2re/XED+RB81669JeYCKc7zv4svuOkPv3W9LUxHbMH40lEzLUBed3Z0eGmc9fetnO4qFf1TYEuCYKV9QsIZAwLdvaNEBR9k/6av7lU3FhYn3RqjX6z9Mc7ntyI3F4Cpsqt1UCrmciBS4qfExfWkpw2hbIsQv8cSYJTvb7RbkJ0RdSivoO/ACg== 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 VI0PR08MB11172.eurprd08.prod.outlook.com (2603:10a6:800:254::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.496.14; Fri, 9 Oct 2026 14:56:05 +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.0496.010; Fri, 9 Oct 2026 14:56:05 +0000 From: Andrey Drobyshev Subject: [PATCH QEMU HCI-8.1 00/21] vfio: support qemu-update with passed through GPU's and vGPU's #VSTOR-103860 Date: Fri, 09 Oct 2026 17:55:59 +0300 Message-Id: <20261009-vfio_v1-v1-0-2ae91d5b8048@virtuozzo.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit X-B4-Tracking: v=1; b=H4sIAH8AyWoC/6tWKk4tykwtVrJSqFYqSi3LLM7MzwNyDHUUlJIzE vPSU3UzU4B8JSMDIzNDAwNL3bK0zPz4MkPdRENzs+SUlBSzJDMTJaDqgqLUtMwKsEnRSoGuvqE gQQ9nT10LPUOlWIiC4tKkrNTkEpB5SrW1AH/+x9J8AAAA X-Change-ID: 20261009-vfio_v1-a176cddd6b64 To: svt-core@virtuozzo.com Cc: Andrey Drobyshev X-Mailer: b4 0.16.0 X-ClientProxiedBy: VIUP296CA0132.AUTP296.PROD.OUTLOOK.COM (2603:10a6:800:34a::14) To VI0PR08MB10656.eurprd08.prod.outlook.com (2603:10a6:800:20a::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VI0PR08MB10656:EE_|VI0PR08MB11172:EE_ X-MS-Office365-Filtering-Correlation-Id: cd3971c3-f29b-4fa9-56a7-08df261571b8 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|376014|23010399003|52116014|366016|1800799024|38350700014|56012099006|10067099003|5113699003|18002099003; X-Microsoft-Antispam-Message-Info: yFzD/08utiuN6894S1d5yeXqqH2EEkPuIEgOsB9sDZ95+aV86xNGolz9Egj6TSiubGj9+S6c4Q+hMiYeXCJ/h2M3XZAikMnpfrmOOX+8yLtjVXbHvYt/yAGK+Kx0+URukyjPIZu0Ggp+XiTXjvZNUc17mmTmkSpOTkcQIuyzNaaKpWtX+jt70u0gqwYBBGO61tZawp/KUBNyWZGc/bN9brvYM8Ig5QL/X/jgzRkazY+1XZOljcLEfLL30khTtBg2/e9pSUHRzWY4uf4veTSUxHAbereVz4wsee1fSCy6fox1jaJUB3WKIOQOY+d+0BLkj7D5iyiXDTh1wMouDMjXYAnQEeToPwRXJX8qUsJSEkZqe/Yd53TJvpgaQkn3WLxQyQwD7WzKz30rSTs8U3vo7i9RtBOuPDJ+zQ/QdYU5Xlsmew+XqMr1vhEvdoa07cm4Ulw2Ec4ju8ul6+//FodnZTSNvBVv1+NzdNNklh+ai2gdLPpiUCjHOAUvomNi4WC2RqvG0o7O7OTEVoqbqNO4BynJQQ8a44tzx/Qs71PxzsO5JX4QUXyIZYEc9olB0RUqQv0N/npzDXWmxT1UzRqKJ3OcnKx4f/71fPfJAuIs7HDqcsUI8G/AkSc5MN8waGGQY9HBrtU6u8/uXVDioDr5O05QMr9NsmBVnHt9LzDAefBg5Q3in1i/ctwlvFvVW3ZGoH2H2qmDQAy43+ROYs990XQY4Ne+U6NEAYKomAjlDEU= 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)(376014)(23010399003)(52116014)(366016)(1800799024)(38350700014)(56012099006)(10067099003)(5113699003)(18002099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cmNIKzdxU2dubGdMWDA5RWJKVklubVpUcDFxNUJQa3NkdCs5b1pNQjJOWHNL?= =?utf-8?B?SWFhTkYvUmt0N1plZGVFMjRvZ0RCa1krNURSYndSR0gyWUhKSGtXV0x1L1g1?= =?utf-8?B?anBSMGZtMDJNL0Y4U25EcXpUZmxhN2ZYaUVLUXo3RU82eG9UNXZaZFI1Y3VF?= =?utf-8?B?OEFROVhEK0k0WXJWUmc4TU8yem53OWp1WnZxTlpMYTlNM1ZtU0kzYkpJVUhu?= =?utf-8?B?WVlHamVnQnBTRS91djZSeUFEZXBCemxFN0t3NVZZRXZxQ1U0MXZiVWl4bzB3?= =?utf-8?B?NDZOUkFlV3VkbFh4ek5PZ2hRTjBkYlpza2lBRWVULzNncFVyaHliRmlFSmJ6?= =?utf-8?B?aE5meEdqOGJCTVJlTWdFR3ovM1dLcEkvQjMzanJYWHJrS3RNWGx1YUhTYWVj?= =?utf-8?B?OS9xRFJoMTJiZ3dGMmczQkZWS0tjWVh0Rk9PT25ETlMzWWw3RjY5TlpRL2M1?= =?utf-8?B?NVg2dmplbFYvaFJKc3NlL2dPUjJhcENFd3NIdi9pRHhOaS9FYmcxaWNiTWN1?= =?utf-8?B?ZmwwM0g4YkRraGpscGthbTZoWTYvTDhFc2xKWE1DVmY4ejBkNXhrM3lYenJj?= =?utf-8?B?eUw4SU9Uek5EMGQyWDhOdC9Xa2RqYlhxR1l3NmNuZklQa0orTHBXR0FoRk9p?= =?utf-8?B?bU5oYVNtR0l1SkMzQ29RVmRzR3lpVjAyQTB2WjRzVWh5SjN1QXRxNjVjaHFJ?= =?utf-8?B?aTVFem9DRG5nWklnd1NMeWNwUExPdUJVNW1jU0NyOEg4bnVxUUY4VDdhQkhl?= =?utf-8?B?RVpZSGt5VkJyVmZRQlFteVA5a2tiWUV3N0p1K25hdEh1bFU5clU2cWNWaStj?= =?utf-8?B?dkRHYjFQUTM4K0ZhV1gzU3ZkdXBYTFQzamhBazRFOU9sdjVjU2NJUkdOdHNH?= =?utf-8?B?bVlHbGlCVzQwNWxjbXViRnAwQXVRQlV0L3ovekluZ1JhcnJHeTdTcGhhTkVi?= =?utf-8?B?WkpVZXF4b3hMcU9Sejh6UTVoSnVXdzFrT2hzeVNBWHRaTUgvVmVGNmpMcG1a?= =?utf-8?B?RjlySE1EZWNOUDhvMWRpN2JicG10VmdKOEJFYmowRk1iYlN3ZE5iOG1BK0xW?= =?utf-8?B?Vjl4TS9LVVM3TUdWRU1jWXh2VHptbE1LMkpaaDZ3SVY3Z2ZaWjYzQzRGMTBy?= =?utf-8?B?UHVxVCtBcDhXODU0RzJ6a05IUjFRMG0vWGZLRVAzTVJOQXdoaTYwVkJ2Z3ZI?= =?utf-8?B?VGZMYmhwUDRObGpqM2hwMlF3Y2lGSVowTXNtN3dEeUVjZXFRc2xjUVJmRFJD?= =?utf-8?B?Z0ZJWlV3WjFaMmY0NUttd3hyWXVPNnJxdEkrREZTdkhDYlhzYTByUFFzaFpj?= =?utf-8?B?b3psYTdwY2E0ZDFDZlNVM2E2VmlEbTNqdVlYTzhQc2QzdkV1NWJmMytXd1lq?= =?utf-8?B?TVBHaitSb0JMb2J0K0RRSnhuZnI4cU05dFZqb1NhRzVkaTFVcHo4REVwUS8x?= =?utf-8?B?LzNVejlhdkE4Y28yaDdkSkZLQzI2MTA5UHpnTjdWcWI0dFI4TTZkWFNzb3hY?= =?utf-8?B?bmxlbzlQcVVjVi9uRFA1Z291QnhDSzRJaTR6QkdEUWZraTlWb3hLT0NGOUV1?= =?utf-8?B?YlljdDJNUys4dWJKZFNuMGduY3NlUnd2MkgzOVYrODRGUjRxSU5leE9Bemwx?= =?utf-8?B?T0NzQzRHY29MNWpSalJHS2tNQ2FsTit4a0dhU281YUxJWjZuMWY3NXVGejdZ?= =?utf-8?B?d3luTDJWcUw3K1BGUkg5ZkJvU0xieHNVbElxZi8yUmsrZFlJeVdFc2swcm1K?= =?utf-8?B?bXo2Y3ZpdzNsMFRQeVFVSEZ2UmZwTkx5UVRsUXdsNmNPTTZIQVpSS0p3dTZt?= =?utf-8?B?RXNpZy9nMS9VaEpma0dWWURtV0VzTzdQM0ZzbkFVcUREbmtqd0Jad3V0czFt?= =?utf-8?B?cVpERHRZMlR1N0JTWGRONjhVTmJIY2g5TXBrYTFTLzlyK2NNNlVpRDU4Slpj?= =?utf-8?B?bG5XaFhtRlhIVE9zVmJtRU9qbmszb2NkUjRKS1R6SndpMVZ4OURvUFlkSE81?= =?utf-8?B?Qkh0QnRKN2Q1b2hZUExDVHB3bi9ZeTJWcStVaFQ0QkdaUkg2MnpzWkhXQnBG?= =?utf-8?B?cU9ySXdabGNmbWEwN3Nic0lWV3pRekxxdTlzRmxzZ1dNWlYxQVZORUhha1lP?= =?utf-8?B?ZDdQSjRFYloyV2xWb2llSy9MZ2R0QURQMlZDRzR6VzVkdmJzTkFud1NEcDR5?= =?utf-8?B?ZUhjWmtkY1M3R29rNDhXU3JPZmRISkhOT1M1SmlZTHdJZ3VVMmQ5K0l0L0tI?= =?utf-8?B?THlrSzdqU1YwSEZxc2tIdmZHcUxWbktmMHp1ci9Ja3NTUFc2YjBENXYzVGhS?= =?utf-8?B?czArVFpVVWJpZWtTaGl2SjdRUTBIOFBzYTFDTWJqeTBya0l2eTJ3V3ZScmVL?= =?utf-8?Q?6k8xDDJ8m3kc9F94=3D?= X-Auto-Response-Suppress: DR, OOF, AutoReply X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: cd3971c3-f29b-4fa9-56a7-08df261571b8 X-MS-Exchange-CrossTenant-AuthSource: VI0PR08MB10656.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Oct 2026 14:56:05.5394 (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: RbXC2piTGTVQG30y18e6JUNrmy7tlnimapzahnBBTmm6pM/fLU/Ums7XDYdA7n+XS4owL18IXDqEJcNCpIH9E8Qv7lyHFa82TNKKFsn9jDE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI0PR08MB11172 Patches 1-13 are pure upstream commits backports. Patches 14-15 are bug fixes, upstreamable. Patches 16-17 are VFIO CPR migration support, upstreamable. Patches 18-21 are VZ downstream qemu-update support. Tested on (bg-sdc2-e18-15.aci.vzint.dev, bg-sdc2-e18-17.aci.vzint.dev) stand with NVIDIA GPU's and vGPU's. Signed-off-by: Andrey Drobyshev --- Akihiko Odaki (1): vfio/pci: Grow buffer in vfio_pci_host_match() Andrey Drobyshev (8): kvm: tolerate ioctls after kvm_close() kvm: fix coalesced MMIO flush racing with kvm_close() vfio/migration: don't migrate device state during CPR vfio/listener: skip dirty page tracking during CPR VZ: physmem: align fd-backed RAM like anonymous RAM #VSTOR-103860 VZ: migration/cpr-exec: abort cpr-exec if memory can't be preserved VZ: vfio/region: preserve BAR mappings across cpr-exec #VSTOR-103860 VZ: migration/cpr-exec: allow cpr-exec with VFIO devices #VSTOR-103860 Arun Menon (1): migration: Fix regression of passing error_fatal into vmstate_load_state() Cédric Le Goater (2): vfio/pci: Reject invalid MSI-X Table and PBA BIR values vfio/pci: Fix information leak in vfio_rom_read() Fabiano Rosas (3): migration: yank: Move register instance earlier migration: Free cpr-transfer MigrationAddress along with gsource migration: Move CPR HUP watch to cpr-transfer.c Igor Mammedov (1): q35: Fix migration of SMRAM state Mario Casquero (1): vfio/pci: Initialize rom_read_failed in vfio_pci_load_rom() Markus Armbruster (1): migration: Plug memory leaks after migrate_set_error() Peter Xu (1): migration: Fix crash on second migration when cancel early Tycho Andersen (AMD) (1): hw/vfio: Fix liveness check in vfio_connect_kvm_msi_virq() Yanfei Xu (1): migration: ensure APIC is loaded prior to VFIO PCI devices accel/kvm/kvm-all.c | 23 ++++++++++++ hw/display/virtio-gpu.c | 22 +++++++---- hw/i386/kvm/apic.c | 6 ++- hw/intc/apic_common.c | 1 + hw/pci-host/q35.c | 25 ++++++------- hw/pci/pci.c | 15 +++++++- hw/s390x/virtio-ccw.c | 17 ++++++++- hw/scsi/spapr_vscsi.c | 10 ++++- hw/vfio/device.c | 5 --- hw/vfio/listener.c | 10 +++++ hw/vfio/migration.c | 31 ++++++++++++++++ hw/vfio/pci.c | 25 +++++++++---- hw/vfio/region.c | 39 ++++++++++++++++++++ hw/virtio/virtio-mmio.c | 15 +++++++- hw/virtio/virtio-pci.c | 15 +++++++- hw/virtio/virtio.c | 10 +++-- include/hw/vfio/vfio-device.h | 2 - include/migration/cpr.h | 6 +++ include/migration/vmstate.h | 1 + migration/cpr-exec.c | 29 ++++++++++++--- migration/cpr-transfer.c | 33 +++++++++++++++++ migration/migration.c | 85 +++++++++++++++++-------------------------- migration/migration.h | 5 +++ migration/multifd.c | 2 + system/physmem.c | 13 ++++--- tests/qtest/q35-test.c | 6 --- 26 files changed, 334 insertions(+), 117 deletions(-) --- base-commit: f3c1d9ef263edfab8d2a273078493bb766dcf8f8 change-id: 20261009-vfio_v1-a176cddd6b64 Best regards, -- Andrey Drobyshev