From nobody Mon Sep 8 16:52:43 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) client-ip=8.43.85.245; envelope-from=devel-bounces@lists.libvirt.org; helo=lists.libvirt.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; arc=pass (i=1 dmarc=pass fromdomain=cyberus-technology.de); dmarc=pass(p=none dis=none) header.from=cyberus-technology.de ARC-Seal: i=2; a=rsa-sha256; t=1756988725; cv=pass; d=zohomail.com; s=zohoarc; b=mugEpAiSkWCQJ7Iiy/czfaN6p0fE9buc7lEQRgEJomTCTv+XGK5XXZHPccSu7SKUE9odRKxrvOdC0cbxUpD1I4R7qSxI4t/hyYPYaX1g0sXXcp/t7QWg6Fku6+MqCs/8VfMOs/L5j7vvNq64ctw34YlOBgsNxhTc8oVdAvB9wq8= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756988725; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Owner:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=SQXk+v3k+JOPh9fhA4QPPT2+HdbuPtBD28FA51rzir4=; b=MWt8mi5euKJsUNwrdhKQxOxvRaie4Jm6acz8Hyo28xFWFiVd1byYatGOF91HfezcopWbtYy57NZjQlAKpFoLgo1mjmOSERU5JxUQWpZmXIlcEkBwUJmWZPh7WAWuaxSvrjUe5rOJBuw3tXLVukT4AvNHZiUTT4LHnaMrj/seL6E= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; arc=pass (i=1 dmarc=pass fromdomain=cyberus-technology.de); dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1756988725496691.4001935412099; Thu, 4 Sep 2025 05:25:25 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id AD88344418; Thu, 4 Sep 2025 08:25:24 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id C091A44336; Thu, 4 Sep 2025 08:13:09 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 509B04401B; Thu, 4 Sep 2025 08:10:55 -0400 (EDT) Received: from FR6P281CU001.outbound.protection.outlook.com (mail-germanywestcentralazon11020106.outbound.protection.outlook.com [52.101.171.106]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (3072 bits) server-digest SHA256) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 4B08944227 for ; Thu, 4 Sep 2025 08:10:53 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BE1P281MB2898.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:6e::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Thu, 4 Sep 2025 12:10:48 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%3]) with mapi id 15.20.9094.017; Thu, 4 Sep 2025 12:10:48 +0000 X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-1.8 required=5.0 tests=ARC_SIGNED,ARC_VALID, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_LOW, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_PASS autolearn=unavailable autolearn_force=no version=4.0.1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=gl2cxS4wjFLdlaWC8jWpOpqA4golM4sc4rnNXZgwwCGvw8BK9ZKU0YuLqhTHs+kaouzZ+TARqX6GFPleMzg+PYyXeuHHP4dgCjoh4v+YKjoIJvksmGG/blwygW+Ud4bMnNvyzQUYZaih2pc7SFmxIzB4aTrbcDYd9YxFP05pszN/ZCQRNhBtAYJzWegCWpWje120VrJX2AYdDQbQvPwSKLZFp/2mwN9omO89T0SMmftO95bZZG3cG6xL4fGWjWNqudEapgurR4WtecbnhEkpAN8AmV/5lYL2C4mW+4rO3ggHsNBBrLjGDkR93y9Enpxa3bT0LrL/nMkQIxIrTY6GAA== 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=SQXk+v3k+JOPh9fhA4QPPT2+HdbuPtBD28FA51rzir4=; b=HZGGcAhltURqObbEK0WNSzNlgIfmkB2eqMS/IIKfmyKep9PWfqTv/dQWWMtBvbHTyIHyq0B1wgY19VWSTN61+tjyrYjpksH2NJ5Cc2Cc8ENDkkVwujpLUujVeXkcpEy57zX530YgcyP9xCKeWNL5psFFwSDKvrrosZhb8i2CNBJj9gZsV9b9sxLeXNAaMyXEWxqC+GbZ7aH+vtkuIuaUr55ZT+rn8sg4Pf7uKf4GjFOhqiGHPCB2yk5aa7x/rXUzXWddo95t6ToneLFV0voZVvIal0pCOcbBzslr3eUyhGS+OXNINe8YsGw9mTV1P+MaQZgq6a5nZL7n4KkVdwhdDA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cyberus-technology.de; dmarc=pass action=none header.from=cyberus-technology.de; dkim=pass header.d=cyberus-technology.de; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cyberus-technology.de; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SQXk+v3k+JOPh9fhA4QPPT2+HdbuPtBD28FA51rzir4=; b=MVbtfKbkXM5HbKbIA617AxsMcfgrxj8/SsnSKanu5ErsMMl2RElITAv2cFTe0hNLmkUYFZ119cl7SQ8KXote8KrhxziTDcYBc5eYthvaPkwDchHJjIuaKHoCpSHH3BUJxlFvxfMt/rFXk4Im8bVzNrOWAQtKE88Pa0xU+krF5rYCyuxSeyD6Qmo0Y+g3Vt8i0HQz58stiqZr976mdEqdTJVCqqUuRTM27lB/qwWZ0vWRKn6jDckTjCUKtT1HSmALbxzgrZ6A6ElhWstc0gzODbMK/0q7jpdjXexFHyQbO+GkqHueL/wKXJ0ti1TDI8hDL5yHoVN4+i3BstTzmG3yJw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=cyberus-technology.de; From: Stefan Kober To: devel@lists.libvirt.org Subject: [PATCH v3 07/13] ch: add disk attach helper functions Date: Thu, 4 Sep 2025 14:10:29 +0200 Message-ID: <20250904121035.1349575-8-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250904121035.1349575-1-stefan.kober@cyberus-technology.de> References: <20250904121035.1349575-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0282.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:e6::7) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BE1P281MB2898:EE_ X-MS-Office365-Filtering-Correlation-Id: b39ee984-f3d8-4129-2d2d-08ddebac1451 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|10070799003|366016|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?qnBb5tMg3Jn12aQ3TYm6sPy1pseMOk29VFees/mHqnjS07Zr04pwEI97mAs4?= =?us-ascii?Q?v3qJ10IV0yiEL8JHGQb9h51YlT3H+o242FcwekKKOTp9eYaduqOm8HzbGZwp?= =?us-ascii?Q?HMD+g4sA5ZKxi4QOXjfPuU5u1aLf2D7mZrFTaO0pGK1jSqvQnOa6P6MnPPzR?= =?us-ascii?Q?1sdIkFUq8sljcSQL0MGQcgJympah+9tQiO+tI87rDJPAQYZ1EZqoEzDRnuoZ?= =?us-ascii?Q?kUCEVzyKlIE3L0cgcVAIZsGTXmCa/t/aVdTklIFe8wbQ5E6EFRAiLniHwsW/?= =?us-ascii?Q?k7fs1KslruUSxwZOWC441E6TJA1K+ilKS01NXtwixlWD5kK6DeA87dt7M5LS?= =?us-ascii?Q?zXBlLS6CK7zHw4YInEC2KSMkDF0Amo2I0Twn4GzNARAIFwwlxcBSTk2NqQNH?= =?us-ascii?Q?P7jnhbsu6vlqwBl7xoRLBtG5IG16oejANIo7QyvzWXap9zFB12dz1aXhdyIj?= =?us-ascii?Q?ssG3dur1y/jAQ1w87kvWX2tsQJX1IU24RNDjyYlP/F8SapDnNIRCrJ9KA4zP?= =?us-ascii?Q?4P0GKOyw7lp5f67AA6Z69eq+VyBhJrn3n6me6XBecBfpHh/zhydcyZOEf0v+?= =?us-ascii?Q?nSY4Iunk4G2Ij7W4PmJcYErnq+E0IUYZ0xQM+9RV8lrUBpm1iIEV5Ptr5Gex?= =?us-ascii?Q?IJNkJwkIoLgw6E8AAzzASSjDylLButMaCaO/Gpy24woAcjl2wpDyVc2OaW8C?= =?us-ascii?Q?kLlzGhpK9FycRiVrV5tpvaeBwpy2P6WfTdVw3xjkpaKfo7OEyMq31SgzZu/g?= =?us-ascii?Q?9UwdafyGMj0HgQLcm3mA4GhDz1POGvde+jhcGkaWGgJdSLnqFcFX6V+8llIM?= =?us-ascii?Q?d1JhmAf7NnTIxlmm0xeViEcQU7HTkgxmRN5xc+JyHjlfsl5KhpVkjjAQ6h3y?= =?us-ascii?Q?++Ui6x6CmhZ5Q/RmxwpjZomEXpBeeX+lQ2FyMC1FrycNfJOblOdAxx/bjMGt?= =?us-ascii?Q?NbL4YvlJiSvILjFxDyqLBDgBilq07AR+BkPXwHT0ZyuIR4rqq5o5qZzvEfYI?= =?us-ascii?Q?0E0B6wZh2bZ8bf7bXHTHAlu4ln5cX/gUjMZ1ctr2haHSM0ZjiO4qGmtdecrs?= =?us-ascii?Q?RJeSMxtam5q0w9sEAz4XN84557mNmlbjPQ4nbljS4fPUaE/6wCCZ/A+QP5sQ?= =?us-ascii?Q?iPCrudh1E+3pg3HNiABKBulI5T7IztHazPf8G1p+mFb1hrOm0lP665mqiRCH?= =?us-ascii?Q?8ETS0baDFgZUoGJrKH/wQdxQtDn34R3uVL7Wz8fiDPYlJscQIR8WFBfy70YZ?= =?us-ascii?Q?Sre7Hd0mLdjAiWjgxaJ0ybQIQAFyPEmFT2NtwPcpQTgsH3r9bAfg3iEs5Hfv?= =?us-ascii?Q?Vum+6Z93CxRQXQL1vbfsZc2zqfkuZLPc7jQaO10eTZDUTAqIFKzfagQuniw+?= =?us-ascii?Q?+NS5wLUXKGzDZA9a/gi8jHkhB9ZgsX8izvakyYBZ+sqKZc5t7In6VsNPfGrB?= =?us-ascii?Q?TrxN6cjJFpk=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(376014)(10070799003)(366016)(1800799024);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?MvVGxNytveuxjBuUpE6dKD6MZIPFOA97XSD7Eu4PsiwLoJpUWxAZ1lkVajum?= =?us-ascii?Q?JbP5yHsIxtxiU8aAMSbg/waSFtMTP0ian2wtVIxmHwTm3hPCekEfqUD6oIev?= =?us-ascii?Q?m9112SHFdhKuxKeLafc92q562mR54cG2PFkV1mtVqPpclnxym/t4mwx3Wvux?= =?us-ascii?Q?7Ek+8WKMaC0mchyS6FXobVQy27rMzzRaS2LE8dyyqEmpe780Koz993ifvnIc?= =?us-ascii?Q?nb8Uc8O02FwRlVa/otzmqdBt16t2akWWXe/zzLjcUjBBLuYRQYfl14SUvxDG?= =?us-ascii?Q?48ySuBL2hAoeaOD3vvYWSYYQ4m/McEEIh6Q5BXJ+Hl3Ws3waFOLXVfjB4+ja?= =?us-ascii?Q?yQOgVZp6KGXJCvnceRTbUx+JOZWfwcJwS5ytACDEuMibiqRwS40dcv4yrMVu?= =?us-ascii?Q?4gCJWBK5XwfWVIrnha62hAQJCtxRHcJScAJDtDDfA11zilPuhFqWIPjPnZq4?= =?us-ascii?Q?/nW5pkvD22aeGQaE1PKlVdLwsvjmcroIYeY8F/jH+cpHFwJYO6/sedjrvLBU?= =?us-ascii?Q?jXfxGugmw+2DJzoBT1DM1zHELtkRoyAMiR17Soapx7snwrQPlZD/WlA31EBQ?= =?us-ascii?Q?FzIPQYLFyUZpOlF31ORxr8d8SfvYTCJYigYmgdymFdb/JX2Q5HyJA5mnSmaO?= =?us-ascii?Q?odZSSrVRDbi2laCRKij+if/E4FNZujCU+/rhEySzEoTJO4eahFTLDk8wc450?= =?us-ascii?Q?vJoh5hkSFi41DNQXzhp1NMYFZJaDP/RPrurot6gzjSyGv00fq1C1OqQTW9dj?= =?us-ascii?Q?Ss4uPFYX/B3GYX8itDXqh6E1dLfx+ge9Tm3RiFjJWdAjAI1RJDwvWK4meP12?= =?us-ascii?Q?/lMjAlcqf7FqRblIdb5pijAirXW9UvNOC9GzuMQPsHFAE5zLRmw4duJjOhHo?= =?us-ascii?Q?dEiZvoT01sh7BmWcP+jGNGh2WP21dQyRFT5AlPvnhx64dNC7ec+hOzyq7C1D?= =?us-ascii?Q?58kSjMqzenekqdx4xS5rr8P4ZRy/E7XQxDyCnyCHaCml+exqZQ5cgWTbMXwL?= =?us-ascii?Q?qvetaVgeVwZ7ar3GQG8voSOG+RAp3izvenNpde2bVRdD+PLxBTNp+Y2Ajsu+?= =?us-ascii?Q?aMLL4KoZm73YZhb6rbh7JbVjImcHD9XnmrCkeS9g1hfP6SB3niQlRmABAf7u?= =?us-ascii?Q?1z4l2F/yORVMnSn/F2fOw3/zkcvmp/T2hxBNb7bO8gRjY6qlSHCXk0Eg9Y2j?= =?us-ascii?Q?JcoWZosKYFWOWFz6USLJ4cnnwsC16ExkaxwK3WvyI8Zf/QvIZnNwAa48Ox3S?= =?us-ascii?Q?kqLCNDR39wh0lYqxuoaU2IK6XzRVO23bpd5GcR7pW0jlySTuYGIG5NwkhWaJ?= =?us-ascii?Q?fJ9ZKJJMp4e2C4/5Kr3RiVu6fkcB0mmjioukvk7QIaqr8YRBbP7qY5Um3LCK?= =?us-ascii?Q?LLiK4mzNXf9dj6X2zROpmswS2lDrBNOErTEPqdAsLVKrjveQzNoRNZk3MJh3?= =?us-ascii?Q?w1Z0XY9TaDRHZ1UeCMsjknx9KASwWCedEqx7tQ5OJVOUejxznJ2ttaXZVqq3?= =?us-ascii?Q?I43+p2GvozmARHCiUi8Bh/g63uZ7Ukd3wxqACyqXqH69FKWv5TXFeNY6n44J?= =?us-ascii?Q?X3U8YDOaAt4mRAMRSqxCQauDHpyTeGiS9/RgbLqUKn3M5MnWQk8mdJU/cCwo?= =?us-ascii?Q?le/dNqE6PXQzIIJAejnl0Wu7SNFuJsVwlncfEy8C0zEo?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: b39ee984-f3d8-4129-2d2d-08ddebac1451 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2025 12:10:46.6594 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f4e0f4e0-9d68-4bd6-a95b-0cba36dbac2e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3OUtDYYTh8v+X9uRphyHNunzYdPr4N6rddN5Edv4EM0/601bvPRMr6diIycVMHZ3Xr5FQ6gZhO3bDf5KV6hQSbkCqc+D+e/OuMc9cC2iCCMm97j0F64XDGmc0fz0IqKr X-MS-Exchange-Transport-CrossTenantHeadersStamped: BE1P281MB2898 Message-ID-Hash: SYXYH3YATF7YRCH5X6FSCRHF3J3PPEJC X-Message-ID-Hash: SYXYH3YATF7YRCH5X6FSCRHF3J3PPEJC X-MailFrom: stefan.kober@cyberus-technology.de X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-devel.lists.libvirt.org-0; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Stefan Kober X-Mailman-Version: 3.3.10 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-ZohoMail-DKIM: pass (identity @cyberus-technology.de) X-ZM-MESSAGEID: 1756988727443124100 Content-Type: text/plain; charset="utf-8" On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- po/POTFILES | 1 + src/ch/ch_hotplug.c | 85 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 86 insertions(+) diff --git a/po/POTFILES b/po/POTFILES index 181a36f541..23da794f84 100644 --- a/po/POTFILES +++ b/po/POTFILES @@ -25,6 +25,7 @@ src/ch/ch_domain.c src/ch/ch_driver.c src/ch/ch_events.c src/ch/ch_hostdev.c +src/ch/ch_hotplug.c src/ch/ch_interface.c src/ch/ch_monitor.c src/ch/ch_process.c diff --git a/src/ch/ch_hotplug.c b/src/ch/ch_hotplug.c index c46628e7e9..7de688dc44 100644 --- a/src/ch/ch_hotplug.c +++ b/src/ch/ch_hotplug.c @@ -18,10 +18,95 @@ =20 #include =20 +#include "ch_alias.h" +#include "ch_domain.h" #include "ch_hotplug.h" =20 +#include "domain_event.h" +#include "domain_validate.h" +#include "virlog.h" + #define VIR_FROM_THIS VIR_FROM_CH =20 +VIR_LOG_INIT("ch.ch_hotplug"); + +static int +chDomainAddDisk(virCHMonitor *mon, virDomainObj *vm, virDomainDiskDef *dis= k) +{ + if (chAssignDeviceDiskAlias(disk) < 0) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("Assigning disk alias failed")); + return -1; + } + + if (virCHMonitorAddDisk(mon, disk) < 0) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("Adding disk to domain failed")); + return -1; + } + + virDomainDiskInsert(vm->def, disk); + + return 0; +} + +G_GNUC_UNUSED +static int +chDomainAttachDeviceLive(virDomainObj *vm, + virDomainDeviceDef *dev) +{ + int ret =3D -1; + virCHDomainObjPrivate *priv =3D vm->privateData; + virCHMonitor *mon =3D priv->monitor; + + switch (dev->type) { + case VIR_DOMAIN_DEVICE_DISK: { + if (chDomainAddDisk(mon, vm, dev->data.disk) < 0) { + break; + } + + dev->data.disk =3D NULL; + ret =3D 0; + break; + } + case VIR_DOMAIN_DEVICE_NET: + case VIR_DOMAIN_DEVICE_LEASE: + case VIR_DOMAIN_DEVICE_FS: + case VIR_DOMAIN_DEVICE_INPUT: + case VIR_DOMAIN_DEVICE_HOSTDEV: + case VIR_DOMAIN_DEVICE_WATCHDOG: + case VIR_DOMAIN_DEVICE_CONTROLLER: + case VIR_DOMAIN_DEVICE_REDIRDEV: + case VIR_DOMAIN_DEVICE_CHR: + case VIR_DOMAIN_DEVICE_RNG: + case VIR_DOMAIN_DEVICE_SHMEM: + case VIR_DOMAIN_DEVICE_MEMORY: + case VIR_DOMAIN_DEVICE_VSOCK: + case VIR_DOMAIN_DEVICE_NONE: + case VIR_DOMAIN_DEVICE_SOUND: + case VIR_DOMAIN_DEVICE_VIDEO: + case VIR_DOMAIN_DEVICE_GRAPHICS: + case VIR_DOMAIN_DEVICE_HUB: + case VIR_DOMAIN_DEVICE_SMARTCARD: + case VIR_DOMAIN_DEVICE_MEMBALLOON: + case VIR_DOMAIN_DEVICE_NVRAM: + case VIR_DOMAIN_DEVICE_TPM: + case VIR_DOMAIN_DEVICE_PANIC: + case VIR_DOMAIN_DEVICE_IOMMU: + case VIR_DOMAIN_DEVICE_AUDIO: + case VIR_DOMAIN_DEVICE_CRYPTO: + case VIR_DOMAIN_DEVICE_PSTORE: + case VIR_DOMAIN_DEVICE_LAST: + default: + virReportError(VIR_ERR_OPERATION_UNSUPPORTED, + _("live attach of device '%1$s' is not supported"), + virDomainDeviceTypeToString(dev->type)); + break; + } + + return ret; +} + int chDomainAttachDeviceLiveAndUpdateConfig(virDomainObj *vm G_GNUC_UNUSED, virCHDriver *driver G_GNUC_UNUSED, --=20 2.50.1