From nobody Sun Sep 7 23:50:56 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=1756814718; cv=pass; d=zohomail.com; s=zohoarc; b=lhhTmKSHdNLjELUGjqPkwiyU/aNr4m+ESka152Y8ga1RNWL00x/BChaDyPzM18fuE3EzRWNTBud9OigWIbd1EwpaUzMkO3Ox5OYTPJLWEgFTh/Ot78Dyedr9KuiHKHdxi3uum4bgj6jjED8nE8fLTNJuvuesW2mVXLMC56GCjPU= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756814718; 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=9vG6HLnjoIjDWPE78x9Ig+YXCK4rnGetw/kXgsSX7to=; b=b/2kVVrji7xJuOyRUJQghAsbTvxCjyxmA0cNhAh8LQ7nroRi0LVPWz9aLVl6fSu+bui1l9axXi2QcZYYtuQ2myOQnXQ0v9z8r1CbEWnekI5cSmjTbdaiD2bY8nywxuz3U950hwqV+B6OpIYivRsik/znCHtmgFiKoVBSW+1PFJQ= 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 1756814718785335.1876863360461; Tue, 2 Sep 2025 05:05:18 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 3ECA543DF3; Tue, 2 Sep 2025 08:05:18 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 9AE4C44322; Tue, 2 Sep 2025 07:56:36 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id CA2534410B; Tue, 2 Sep 2025 07:55:45 -0400 (EDT) Received: from FR6P281CU001.outbound.protection.outlook.com (mail-germanywestcentralazon11020102.outbound.protection.outlook.com [52.101.171.102]) (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 51EE144119 for ; Tue, 2 Sep 2025 07:55:42 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by FR5P281MB5644.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1ae::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:35 +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.9073.026; Tue, 2 Sep 2025 11:55:35 +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=f7L2kJDiGaAne1MsW8iA9g16jCIiYjRNU6BNE/NVzJOwP0JlgR4ZGnPAQmE8bK3FEXC+QFPSnaFZHaX7mOpx+UUj1zbIwsKBd9w/vXx2bdER733KGeyxTU4ikqeeTts3YPQQnUg2nap051NvbBrTiMZ+AjZnNZejmgXJW3m5qRoXZ/Hj62k3HfQFIPbb19KCP6+PdWT4Jx+lBcuqvQzsk7Qb2x3nzWMzciu3F/NnUljvk4gS1sDK2CFbKpnmkJPPpSWA6CkxkQZ5aY/7CMQA/YGTOF42Eg0OeMFXD5QCfJS/p29r0B2GIBdch+p1Fezh5hiN3RongOohqofW2rTecQ== 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=9vG6HLnjoIjDWPE78x9Ig+YXCK4rnGetw/kXgsSX7to=; b=Ckkte8yroDwVQ38B5hUW1RZV0fmBOvAlNHm2m7F+m0woYgyJcjw/G2pUV7xAVj9KLn2LcicmhlYcJBTLS0wqq5qXtbWwXNDZnNmxiP95X2w1bqevzyjfYAip/daLRugvKhjNRjU+actYvOWDX4RyL9jxYFjUhHRyMkFIwdmxTbbzUrvSFHsQJqXHhKce2qsQkitmXVeCJH3ZPJ/zXcPyKZe0u7S+LOInbLISDZeYYOpVFuORaxCqQ6uf7jLAVC4ROhcpuitb1pmDowSdYMRc9bdD690Z9fsLvwqFK7j1GrlXwvUrIUe2kNI5idAgIctOyayV7irBlCshaLHW3MahHg== 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=9vG6HLnjoIjDWPE78x9Ig+YXCK4rnGetw/kXgsSX7to=; b=HUoeL7dOlfcaw+G+hCG1jHRxFcmYCoUtmMKKZansknNfM9fS4hz2KoxpaiPSPJ2fGt+fjAzfdijs4d7Er3YqYZYRDhM2bhj3kHjJaksP8DKhowrzyWCs+nl2GrT6DwpNOSyuzJwZZ8f+TlmhlguDUBzZtrLjFh0fEb+CL6PTZ7JtdfeCuKfy/XpPmePZb0+07engvvyIYGlFejs2sb3wOgygGA8uaiJUBVB8FYUSzAUej8Hnq3U9UILDX7aRpKNtEGb538THHHhUzWOA4R6+NbJhQ3QGuY3sP6p0KN1xiSgNb3qE8DcKyICCq0aHXPGUzjLoCHLsheCfO3YMYoBMpA== 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 v2 01/13] ch: add DomainAttachDevice skeletons Date: Tue, 2 Sep 2025 13:55:16 +0200 Message-ID: <20250902115528.557133-2-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|FR5P281MB5644:EE_ X-MS-Office365-Filtering-Correlation-Id: 12de6cb4-f407-425b-7535-08ddea17a080 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|10070799003|376014|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?n77QrwTjAJztPOn3w8OfND/29oQa4frcM6Z0JtawNEoL18VPfRraJkqSYo0b?= =?us-ascii?Q?va01WQhrSIiE9DAZJzMfPtAYm0zY5I6h6G/TM92uU2SGbdVLx93A8ZJag76T?= =?us-ascii?Q?a4z1e2gp7N2Nl7KLDAzYn198scWFXpfuK89a7XsfrNJnavqJ9uynI1JVZfTn?= =?us-ascii?Q?340L0YbBcp+08I8A3pjBCYTjx1rBgGwwYsYrixxmj5zZt3NjE6nfSiCWdiB9?= =?us-ascii?Q?cR4TxY8wu2BO1MYpKHN5GmF4M3MvvbgNoa1PIayxdvEzbBfz2s62xjjwNLw7?= =?us-ascii?Q?Q3BXGm3j5KMP+Cyrp1W0O2e2hazAFXcb1RsHlUzukCgZhcVV8dYKYSRcx2Tq?= =?us-ascii?Q?D8KP9CbyGi7etsq1ea5/jb4bwl+T0J9wBQ8GynoqOp8DC3NGyc+zCHAnzoc8?= =?us-ascii?Q?bJDsT4Ju0+jj7wPfvrS6oqfoAhzd2MZA1XbFBgvGwkUjoNjT17DfxA925C4Z?= =?us-ascii?Q?83VPWU7bxzcGF7t8Pz3VCLJusPm68jelBOTX7FH0h0oPaiyhznj+Upj9G4bt?= =?us-ascii?Q?iuyePQAG6Mqyb1+CNbytwZPJ3oNM9vXXmXteuq3DSLTrgHfO9r9M4lLD54jR?= =?us-ascii?Q?3HeAvcZbAm6HSzI9gtmQ74wbFC/L4z9uyIaQIqFVn0azilMQnBQCbUQUVqb0?= =?us-ascii?Q?9fJ1rNIKf9WROVZidJuyk+MxFf/E6G2wUiJ2DKleldfT9Ie8bM1V3VnFw/vt?= =?us-ascii?Q?EdqDEIMjbMlIDi8mHZL3yQA/3bS74uLpox7FOIJ2DcExwni+sJPZaULlxSNB?= =?us-ascii?Q?7UjyJwLCZyZJ81oHhFKl0CsvComypoy73CtHMcknBXHuNCIqrL/fzoQqNrm1?= =?us-ascii?Q?8OJV+UWpnFqriO2hNACdDvNValIS5TyW4oEe4AMbwXyHEtLBCiNMtj0vPD6b?= =?us-ascii?Q?2YLbHGjbTqOGTUAGH6wy3Bk+MHINNwUjWOQD47O/c+Nd1nUs78VjksLqhkpr?= =?us-ascii?Q?jNC4hrKj4tyQEboKHUndUzDFIBFDwObz8+ghfAcrCQqivjrWzWUNWpyVdTMa?= =?us-ascii?Q?yFf6uko2I59tlJJi5jxdoXulopPyMcAPdtI5n6KmbRoESgJ87mhySpK7iWdr?= =?us-ascii?Q?wXG3pTqwuW4zy9vI43Yqsx3GCK/S3OU5wHr8z6lKZs8sWHnojWt5u2AtTYPq?= =?us-ascii?Q?CJ0GdzdWp7pTcwP+dxwYF7CaRfXE1WYXa8+WQRoc8KR80BTH20zpIcQ/KDrz?= =?us-ascii?Q?K6tEz96rdgtGcQTkpdbmsXUZrDzsw3Q+Uqtsa2uY1DlYvT7vAyKRhY/2c8J/?= =?us-ascii?Q?z8wLjFO3alwAC29YaELibLA4ugOb8kZ5KFBG9w7oGj64b/NMfW4C9m+38lfq?= =?us-ascii?Q?wnbYhHba8wKOi4MXfuvs8v+hrdiJwJqPJ2B+34vmubX+uDnYjEPz2+rmLn2H?= =?us-ascii?Q?1Q57Lthl2g8/JK4DQjVvYLsyBd3wIkCnAtWk7CPnLn+IDS+I13iwWb/hOWaW?= =?us-ascii?Q?+Es5kFVm5vw=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)(1800799024)(10070799003)(376014)(366016);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?+tdFgI3vCZ7fIDQMJA8X4iOeQ9CMsZ5jH68ElshYnwfs/oCxLa0kDgWftkVP?= =?us-ascii?Q?tKn3DVvD9RjPnaRM8wyso8bL4a+8NhVQ3At1ZjShns2NQD3W5yIRS0iomzks?= =?us-ascii?Q?SE196yA2LVIoVHIWmk7DTTN2kelPhGC0G/pBrWmQUZ5N78h/1OCHg8VxqzvZ?= =?us-ascii?Q?AXjNKgDsCmEuMndQ86ieVHvUtQgK3pj0PWj7AzQm2MMwyPLkldy3eH5fQnTs?= =?us-ascii?Q?CZYdzh9J8tqc0dtj5NUr5lxH58hdHJgUMdEgEL0fRxGWxrh6niUhxFGdxu+5?= =?us-ascii?Q?vXnCzyP3oRsuwZpJjyaMETauO6q0B81PF/z856pLq8e5iEvmcKV9ENKcX3Xc?= =?us-ascii?Q?IFzy5aWuv/GKRFn32VkKEV2nTgk6nSgaxND4OPMZ7m8DUHYKwMU7TBV/PU2L?= =?us-ascii?Q?k9E9hylVV8z/r1wouWndYjcDvDV3P1qM6BevTEAgYDd5F/1KifqfNsqzKsCA?= =?us-ascii?Q?4F29mc0J/2EdWDwL9dpRfAoyJ3YOluzh5m7L1OedPlFbiN9rrqKaSB49a8Ae?= =?us-ascii?Q?U+Q8CijWf1dA4FqPYrF8RlG+aQwRcGVA7nDGN/GBUSHgYNMknFr+PN3cReuH?= =?us-ascii?Q?B7ZqCAJqIQFVQa6ZQe632LqOozMnWiW+8xN9BerbO3ASAxd3IOzZPZtBExaX?= =?us-ascii?Q?g3/wi3ZWUC0b4uoGGTmmVAM3wJqDhH7U6ECFCmeiiza5gskTw+Mn1fKrBGuP?= =?us-ascii?Q?qLltwHx9L2Mz5Nc4Lt7RToWDga09kdKV9fiq0v7cZ9uW59txPOW06qBkvrFX?= =?us-ascii?Q?SLrqjYeWxfP0B6zXYMmxHGIMUe0OW84qu/1bV2eO348/P2eBjvk1L8uKxsoP?= =?us-ascii?Q?vBSCVProfesFTVTvTx9EDwJK+os8YIYiMMeot1c3JnXwaPhysbh2p6PcBaIC?= =?us-ascii?Q?CoRth42m4aceQkkqmsfhlowFHENCG1C0d+TtMszR2TQVNj7qB3AxJYGHTVOh?= =?us-ascii?Q?EqbLMRtMqIGK1F+s1JRzzid7Jr2gL4c1JcE8N1xogzGMknXMTksoB22Ad5+k?= =?us-ascii?Q?qGp6Z307yqkLd+7gJyzRMfWQEVWrdb5X8wrL/hEZFJDhw4pFmteXq/eXc4Cb?= =?us-ascii?Q?6CTXs0Eq1xtju/pGJB4xPpRcD3yor0ARX6LFmQXdFhcRlHfOlBeIhF6Tdf1X?= =?us-ascii?Q?8y/Y3U/3f6EcZzGEcHL0xm+4Ub3trmXhfTnmPOVomxOQ7zaeNnZXKLQLjbS2?= =?us-ascii?Q?04MT/CXeznYxmlsBlOmF0APPVeTnjp4snZG1PYYSl2n7NXxm6UEUD8REmUbv?= =?us-ascii?Q?NdyzsRD0kOydxVaBOukYfmqaI+i/7X91stqmlFBumWgUIKommo6bV+J7tiRT?= =?us-ascii?Q?SymhBisUHctusb7/c4v2uU1WB5v4Vd7LALVYfzKA7/5k3Wadt69pHYCcHDbN?= =?us-ascii?Q?jQXyuB/ZORsxFsPI5Tyl7Nu8stqRc1VE7C390OTDZNYtzXfwJS891wfqv54o?= =?us-ascii?Q?26M1byw1q7r5pN0DtsevPJv6KhjCQslqhYTJUYEFqvbLkpEhXfxpN+uDPlRT?= =?us-ascii?Q?dAfHE6b/gdBYB2egdwxrV1AuqmG9fHKAA1sOUbmRIPbXq6EUcxQqVQRc4Sd5?= =?us-ascii?Q?1WWHfGP6diaK+8Pml0xM5NXKqKxm98n7eeRwGaIJySouQXmUA5l9zAXwkb3S?= =?us-ascii?Q?LQ7ZoOJZoQxIw+t/idORNv4NxkoACAGej792ZB8365Rr?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 12de6cb4-f407-425b-7535-08ddea17a080 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:35.5741 (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: g120IbCKkDCGqaElundRDffgcgWUsKItlOV8emX9uIhGFfSZgwoErqI5n+YoOLRh8Yes2NgJzZBt6DELFxPNmLQr4IkluxbHoHVQrUNszf9gzm1saNg5/g6qBjwUpf2O X-MS-Exchange-Transport-CrossTenantHeadersStamped: FR5P281MB5644 Message-ID-Hash: IYWCJ5WK7AVVOIFD6YS7HPQP6XCDRK7L X-Message-ID-Hash: IYWCJ5WK7AVVOIFD6YS7HPQP6XCDRK7L 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: 1756814720493124100 Content-Type: text/plain; charset="utf-8" On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- src/ch/ch_driver.c | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/src/ch/ch_driver.c b/src/ch/ch_driver.c index cf6874f22e..7e8f73564e 100644 --- a/src/ch/ch_driver.c +++ b/src/ch/ch_driver.c @@ -2344,6 +2344,40 @@ chDomainInterfaceAddresses(virDomain *dom, return ret; } =20 +static int +chDomainAttachDeviceFlags(virDomainPtr dom, + const char *xml G_GNUC_UNUSED, + unsigned int flags) +{ + virDomainObj *vm =3D NULL; + int ret =3D -1; + + if (!(vm =3D virCHDomainObjFromDomain(dom))) + goto cleanup; + + if (virDomainAttachDeviceFlagsEnsureACL(dom->conn, vm->def, flags) < 0) + goto cleanup; + + if (virDomainObjBeginJob(vm, VIR_JOB_MODIFY) < 0) + goto cleanup; + + if (virDomainObjUpdateModificationImpact(vm, &flags) < 0) + goto endjob; + + endjob: + virDomainObjEndJob(vm); + + cleanup: + virDomainObjEndAPI(&vm); + return ret; +} + +static int +chDomainAttachDevice(virDomainPtr dom, + const char *xml) +{ + return chDomainAttachDeviceFlags(dom, xml, VIR_DOMAIN_AFFECT_LIVE); +} =20 /* Function Tables */ static virHypervisorDriver chHypervisorDriver =3D { @@ -2406,6 +2440,9 @@ static virHypervisorDriver chHypervisorDriver =3D { .connectDomainEventRegisterAny =3D chConnectDomainEventRegisterAny, = /* 10.10.0 */ .connectDomainEventDeregisterAny =3D chConnectDomainEventDeregisterAny= , /* 10.10.0 */ .domainInterfaceAddresses =3D chDomainInterfaceAddresses, /* 11.0.0 */ + .domainAttachDevice =3D chDomainAttachDevice, /* 11.8.0 */ + .domainAttachDeviceFlags =3D chDomainAttachDeviceFlags, /* 11.8.0 */ + }; =20 static virConnectDriver chConnectDriver =3D { --=20 2.50.1 From nobody Sun Sep 7 23:50:56 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=1756814215; cv=pass; d=zohomail.com; s=zohoarc; b=iHQvUmvbBeiCOSFz9fdJFaW+fQ9MAwTpiSeMBUEA8x/qbt4RuHQZAVwyTO5r/6UeMWlI7In3K87oCAKRos4DS4iD/CJUcNkSFNqAVi4elZ4/0AxxqyA77y/x69HyVQ5qa4TKnSmEqPe8LMHLlZP6dJMFAZ1TxrzLr/pnajYLc7s= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756814215; 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=Se7VF8A8FEh670V97cqxaZ+HC/dYvTAOk6P6LcJbXvI=; b=l6P2SQlbPdI3KV1KUgl7JjREnCW4JwqO4qziXTozUbFHsJwVJdGHF5dJ2gZ6eTp/JqY5CMXzgi5T5Wp9pGRNoLhlCgO/pgB9DFQJhntpDjrRUONDxUBxdrXJhQIRAuy2hgEqchjex+/M2McWyEUFGpD3EhdCusDB7ZHzCLCJOGY= 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 1756814214768890.8565086367237; Tue, 2 Sep 2025 04:56:54 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id BD4334454C; Tue, 2 Sep 2025 07:56:53 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 4732A44270; Tue, 2 Sep 2025 07:55:57 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id DB1224411C; Tue, 2 Sep 2025 07:55:43 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020083.outbound.protection.outlook.com [52.101.169.83]) (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 C2C413FA2C for ; Tue, 2 Sep 2025 07:55:41 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEYP281MB5646.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:e4::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:36 +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.9073.026; Tue, 2 Sep 2025 11:55:36 +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=F3mz+K6/J8fWZ5nH/qlem9OjGZqWrDZ6rwEWGpQvjwOYOypNWbtlb6ANlAKnTjB0QhtuVF7vZAkA0iV7ekSNq1BVjjxGYvYEagG7maQHMoHoh3lB67UzROO9Bs4o1lDuJodxuzlf+y70afDxLa/QeBvphAMlK3hwq4FmOekV+Wz/TP0pleTjLe3T/0wypF03D9O/mPY3EKiKdDQpe+RHct3fbDQbbk/dFCMGnMeeoOicyOKf7LMg1T6Qr7iBj7h1R+g9SuGTP1vIyHkIZs7DCiPpmmm8LCjOE6PgWMHPw+aqNkIEc2vKUn4kSUPiCAeN2s5X50P3iD/R+vBgdx5qDg== 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=Se7VF8A8FEh670V97cqxaZ+HC/dYvTAOk6P6LcJbXvI=; b=mO55+WDWavO2oXehKArYIkL4all2n20UWf3ce2iBZ6e9647IqqCycRy3Mu3G6+aCAgnMNI/30KbjIvhfFyUXwCpH4vlHEfNZXPtBpr8lzD0YBtfBGGMXW1ZoIge4YU5Xjr9MIcyjyMjdt21oa7ga0WHmfxHP5+iXLBT2kVgAp4PgLnsJpdv27ebn6NXU2JGxPSV+u2Rbp+kD8hJTu720ItQ5wnYPjEeHPQN55ivAQDgCEo1o1XHb+X2blQtBOGQS2rvF+FFWdyI8SHogK3K6+SjVrOaOzPHhtWuk0WLRVt0iNPUPJDVal5WQVzWyt7mie7mQS8Ux+fq8q/lIBMMmog== 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=Se7VF8A8FEh670V97cqxaZ+HC/dYvTAOk6P6LcJbXvI=; b=i2lS5PkZBOsqjo1V4753N6vTEkvTMiY44y6C31ruSxUdvyk/R/UxROA2ZpS5nKrNURg55yOyM6XYiHYoFZA7VxQ6mNt+DekEKLBehCqeKxEx3ETI/lxxjcraJGLAS7vYUBerr6thhXU2aCczjiF1U/kSOge6bk6Xsj94N3DW8THdzkp7x1D5n8OqjgriFy1eAS8Dl+e6tuxRiPhk6a+RY7usJDKhhUyv8OMQP5+VZvtlA/Ie4oweRXlB4ZA52KLp26IvaXQo8fgVxI7pKAsHmrYjprBZR3hWW1bD+fPqkMAt01f/IohMXGaHSJ2m6dIcTT5EKM34Nk8ybOa+m0lUtg== 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 v2 02/13] ch: add DomainDetachDevice skeletons Date: Tue, 2 Sep 2025 13:55:17 +0200 Message-ID: <20250902115528.557133-3-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEYP281MB5646:EE_ X-MS-Office365-Filtering-Correlation-Id: b47fbe1e-b9a7-464c-4fa0-08ddea17a0c7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?zcg1Ph5UMpz6gM5vwUN2QTimGVLz+VtFGeAjXLw28G2D+SKlgPuyZ2FXJncJ?= =?us-ascii?Q?655LL07mYpzI/RhDOhQSj9r2ViFY3rjN0nCjbYzkooTysNPqaiIvk82sZb5u?= =?us-ascii?Q?Na4rqKq3cxMJR37TW01JrijdQtrIYU8lZwt+572Tvc6b3EHo+qfzWbIVlp30?= =?us-ascii?Q?M1uNCmUsq8XjsNItmYJT2g+RswXrpoOWJRDzmgNAZx2jWH7Ugcqr2is2enAx?= =?us-ascii?Q?qFhdStyv5diQw5Ob4Nb6knTXzXR2TdguwDmxHRc/9dg8YFUuf8SSxclGvaeA?= =?us-ascii?Q?cSpshcsRCXeC8NPzZezUfEwSxSGAS/uo/HaRpa4XoBYVoOCF+dgdHYMWykfm?= =?us-ascii?Q?SZMhLVupP65QbOwUerm5gLjjW/KyZnNsZweaftFqkFcDcIzVZLpJ9ByHnZKM?= =?us-ascii?Q?ieQn3HLUjUTA1tYEr9LathopQyiBLCekZNGHKeXDSuUqPPfWoFPQ0h4gXB7l?= =?us-ascii?Q?c7EmlZuloAVZKdFblZPN2eUWLVWiTI0CcihLOQZNyQjXLTkU96dJXg4pWFX5?= =?us-ascii?Q?+/rONsGnhhdN2Flt+LG+B0G3mt45W2bQvXBMP1+oW3VPPkpMdyswjJ63uVIG?= =?us-ascii?Q?k8Ze9yQjP7KQN/M1uaMc0GdpRlmkEk4V1E+EZNSd2UAb0nL1uayVJM6VShAN?= =?us-ascii?Q?XY/Ph16eO3y8q0nzkHaFkpK4WsMbQA+BZcesouWFGHYZkZwhK8py6z7ODre4?= =?us-ascii?Q?ODqJiwtiezLW1sKea85ZA6UGOAhKGfGXYnuSjUM76nABT5zHAiYqOUxXYAu1?= =?us-ascii?Q?sKRqkKX7lvCH10bgKQ+0xY6Dn8Mzwy0QkGtQMEw67+EDq5XpfoxS7I7wxLhZ?= =?us-ascii?Q?hNFPS8FGCeiUmC5B8u44xFjuFjkBWUoDeVLA4n30I93Fi1yJCByiYq0HaFTk?= =?us-ascii?Q?DGfk+Exq1HIsdKtyco4rRVqdD66nImVckhvDJnj95WyOhJ0v0YusFSc/lf/j?= =?us-ascii?Q?ydUKmjudqfQf9bxFOPkGj9ZTVW+SP4VHxZxeZisYAoySLWl+pbOpAugSN9a8?= =?us-ascii?Q?q9oPC9R3FAj+x4pA+6FX92YAslOIct/WKKRGGODqSUqDuyP5NWo0MJhxp/Wx?= =?us-ascii?Q?w1HVmQIg+XA80pCD0i1xWbisfj30ylQ7d2oMQS+1vy9sHj/GY39GBD3ELr0f?= =?us-ascii?Q?vLYCS5rqBqRycnt3HZDstCp4Un1ogg/SNsHrgAxDYilcGJd1f7oAGBK8B+x9?= =?us-ascii?Q?iirp8nMCgnSWbkq3Fe1nKriOcZR6eXc0Fhg5Gim0JcflPHvjXzLDnScNxybZ?= =?us-ascii?Q?djaWIFzFnrCcKVys/EWs9r6Rn5P0s3XbSRPrS5K2Un0LkNgP45xVKfFXgBL7?= =?us-ascii?Q?ZX//KVouTrsBZ342iP5f1qvJ69iikaeS+XojNzr+vY6RskHltZeaD0QBqDtG?= =?us-ascii?Q?2XImSgNJR+k7Oh7h9H47HrGnt4f5NL4f6euo5OT1h9aNy+8E7W4cgxhtskR5?= =?us-ascii?Q?rgVSeypH/pU=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)(366016)(1800799024)(10070799003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?OsOvZ2Zh9IlfALdrZ8E1Qg2KM3GC9GUsCB5k+18Dm+6u7uw4YEBNiRJFxY08?= =?us-ascii?Q?PUDQcFPJgQoyYD/RkiPvQkkP9Yzdrz7W/5TUHcZk+c0NIpOgUeMhmg2/4xR8?= =?us-ascii?Q?lqTHQ62NrlMbnOzRv60ESCNM9zQJaJBKl80HonFF8+FR+fNavejX2PIUd7Vj?= =?us-ascii?Q?B+5jLZ9eMyY25To85cEv7Y4H23+BjNsuHzFPZkA00sl3c6yt4R10DgfmQqa7?= =?us-ascii?Q?10IH4RGWQqYRI8qBHnwrmSigBUqRvShVtJc/5QlahLsAwbfJAWWbrdJNsW81?= =?us-ascii?Q?7eOyi3/XmcfIwK7BGrbQcjP0/2hqC2x2ZCHLoQhQLQpLqojKpQizTaFmd14l?= =?us-ascii?Q?yoRPH5JcZjsrVl8fFBtPvuXOVzqJTx8WnjgfP8tfEqoSEBwJFL0HielvyCPO?= =?us-ascii?Q?bp6rWH2aNFAS/ciy4xFZPtSutjla/nKHXJwRVL0i5r9cL+tGdB0NDPFOvJ/J?= =?us-ascii?Q?tYfT5twWLfvOglpUuYHy+T301tyN8GIO/SrDSpZeCpS6IC5sQvoLn2XcC+aQ?= =?us-ascii?Q?KqZQKP9PI5F897Oj7PVT3AqHBkoYG1NwzCTX98FNWyQrEXIqNwnh8yqroqZL?= =?us-ascii?Q?TJCn40panjccNaVVE9l4Re0EdUcZpYBMwnchoP7SL3907rUoqp/1feCxw7EI?= =?us-ascii?Q?ZemP35bkll61vp99g/PGr0xhrlaIHBQA/wgSRc7iNwbD/mWlDmyuMt2XbtIm?= =?us-ascii?Q?7rwCr0uk9lAGc6NyNzW3l93V+PO8b1wCAoQNWy3MJ7z47Iqf1Plpkk6TaS30?= =?us-ascii?Q?BykxBpXrEVJgknODCi56Iwdu4kF9OPuuAKLwF0N0BzS1TDLT8IxwyLC0bgig?= =?us-ascii?Q?5RxDCLRN1dAq3vCTFTuql36fIZR/ihZh+h1ec6rZOIh1u9RgQsf8FbMnz86u?= =?us-ascii?Q?zzDUWu/00A9DPzUpr8bfhMfUZjCfU/Ogy8q8b9iT5vgOHJ9W0nIEP8ZsZYck?= =?us-ascii?Q?9oUYu/R7Zbp8v7fLp8xjPMj4GhLQX7/+eu8vPc2PjYmW2HUzmRInE3RNZIpG?= =?us-ascii?Q?+fz4HOHuejZUT3PB5qRN6JdnB61KMtsKvTNDuZKh4Fx0E/pju6DEbzCecLBD?= =?us-ascii?Q?n58Wzm5g69UEZkEjuNm2VAlEWcr2nFhSXvigsoSht5NFhBt12aQ/CtDwBoWO?= =?us-ascii?Q?+XIkn5MyAdgDzoYJ7mekTYuWFun96CRw0Lts6rVeKyvUn8wrlhG6pLhnK74O?= =?us-ascii?Q?p61VQAPJDjgoo0YL9OfLuE7+QqDNZTGls9mkeBb6f1QP9wXsk/bnxN3aspxe?= =?us-ascii?Q?Ww34o/z3dJIay7sKC8RCOpgex/Z7bqWb2cVCaKrbBpbzfr2S2puUXxv9MkzV?= =?us-ascii?Q?RKtUKDen+H/ys32ajSRL5Z9+QYyQ6iF82FlIvBKNdyHZ/eG2ikkW4bTGMFPs?= =?us-ascii?Q?t5GxCFveb/jviRTRKpI9zGJMImcwkkvn98uEz/B99NkL4PNa0W6WIj4YKVdL?= =?us-ascii?Q?mokXD7xemIC2Kbr1Fq8PnJkyVBrVtvJBGJYzvA83ODi0w8x0po61oEJFEmzR?= =?us-ascii?Q?a7fUGKczOceZxndrReb4I/NkEARwCLG+iXASYmbOLWyFnq/R2arFEfaKQQ5+?= =?us-ascii?Q?5R9PsF0AV1fQ9Ljo4sYdOa1H3FU6/YUVZS7MS4HlY9dWHd8x3rI/RVwbIlh7?= =?us-ascii?Q?fqVBfUzl93Hoeb41u4FvlNv7bFyR2XU8xmzxSIytfrdu?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: b47fbe1e-b9a7-464c-4fa0-08ddea17a0c7 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:36.0346 (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: n7cUhIqjumMD0pgE37T3LTWhmjXYKiJFAEBrvQKFPunN9eoo9O+p7eN3dnSxRnNKgXJj/krm+7Wk4leVL8GaeFGjyL10E2LG83qZUYEyAuoHDWnx00LA/8sjibQTdamF X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEYP281MB5646 Message-ID-Hash: 5VCSDDGHRENUSC5SBTQJ6TMTMVNCLFEV X-Message-ID-Hash: 5VCSDDGHRENUSC5SBTQJ6TMTMVNCLFEV 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: 1756814218575116600 Content-Type: text/plain; charset="utf-8" On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- src/ch/ch_driver.c | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/src/ch/ch_driver.c b/src/ch/ch_driver.c index 7e8f73564e..e5e1bfd7d1 100644 --- a/src/ch/ch_driver.c +++ b/src/ch/ch_driver.c @@ -2379,6 +2379,40 @@ chDomainAttachDevice(virDomainPtr dom, return chDomainAttachDeviceFlags(dom, xml, VIR_DOMAIN_AFFECT_LIVE); } =20 +static int +chDomainDetachDeviceFlags(virDomainPtr dom, + const char *xml G_GNUC_UNUSED, + unsigned int flags) +{ + virDomainObj *vm =3D NULL; + int ret =3D -1; + + if (!(vm =3D virCHDomainObjFromDomain(dom))) + goto cleanup; + + if (virDomainDetachDeviceFlagsEnsureACL(dom->conn, vm->def, flags) < 0) + goto cleanup; + + if (virDomainObjBeginJob(vm, VIR_JOB_MODIFY) < 0) + goto cleanup; + + if (virDomainObjUpdateModificationImpact(vm, &flags) < 0) + goto endjob; + + endjob: + virDomainObjEndJob(vm); + + cleanup: + virDomainObjEndAPI(&vm); + return ret; +} + +static int chDomainDetachDevice(virDomainPtr dom, const char *xml) +{ + return chDomainDetachDeviceFlags(dom, xml, + VIR_DOMAIN_AFFECT_LIVE); +} + /* Function Tables */ static virHypervisorDriver chHypervisorDriver =3D { .name =3D "CH", @@ -2442,7 +2476,8 @@ static virHypervisorDriver chHypervisorDriver =3D { .domainInterfaceAddresses =3D chDomainInterfaceAddresses, /* 11.0.0 */ .domainAttachDevice =3D chDomainAttachDevice, /* 11.8.0 */ .domainAttachDeviceFlags =3D chDomainAttachDeviceFlags, /* 11.8.0 */ - + .domainDetachDevice =3D chDomainDetachDevice, /* 11.8.0 */ + .domainDetachDeviceFlags =3D chDomainDetachDeviceFlags, /* 11.8.0 */ }; =20 static virConnectDriver chConnectDriver =3D { --=20 2.50.1 From nobody Sun Sep 7 23:50:56 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=1756814286; cv=pass; d=zohomail.com; s=zohoarc; b=anUTh47clkHmDvrx1rtYhTE/VDSCNuPdGKWREMg7xT1IGtqCggR0Uh2Ehw19DjOroijbD6b+Hxn6mV7iCX9TF4EmSlIsHuXtBcai4URVSr0ECjIk01DPE8GmBu7TB9NLR0LGNlp963hPH68/7m/sZiuDGGJ9i9oAPP9ASwMBhWk= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756814286; 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=CK9i1Sb6CMDxC/MrOQyZSSKj/FvchdD2aupVYy3Yi7I=; b=GaINrPrq+USEVoor/sW8c4i3xbFcTwbs9Fs1lI+1t2Hw5T53vy8nDG38zkcmL13lKVi6r3QUWTfdsKsKuuYt2ODHAxYBJz+NhzjxgPi3zJR2bNYmbErzoXFTvx2nsD8veeCE1SAKjucs4fdcCg74cahfGhyUI/BSF2rol561tkw= 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 1756814285460433.09030055658707; Tue, 2 Sep 2025 04:58:05 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 8470544295; Tue, 2 Sep 2025 07:58:04 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 13EB7442BB; Tue, 2 Sep 2025 07:56:03 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 7688E44125; Tue, 2 Sep 2025 07:55:44 -0400 (EDT) Received: from FR4P281CU032.outbound.protection.outlook.com (mail-germanywestcentralazon11022133.outbound.protection.outlook.com [40.107.149.133]) (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 F38E744111 for ; Tue, 2 Sep 2025 07:55:42 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEYP281MB5646.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:e4::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:36 +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.9073.026; Tue, 2 Sep 2025 11:55:36 +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=GO/uWgtwX9+lEXdhXnyQQlU/sJ9Sde9VXRfzoos3RrSSI2XebaGCLwRkJNsyDcJx9n4Vs63R+rTijBiTrrHwLHltTfC3XP+1a0qTxr3uYqHDUFH6ckMat3qpZQ5yWpa7gevIHrW/43hN5EVgHx07rNxF3k6DRabp+QuZzOfxazSAQ/b8PQjGkIRTZO8jMZvKM3y7/73DIePJqipyE55H5Teg8WgbXFQ5YO+xkWK4wkNFIaYxnLtpWeNUEPn4GLhEb4jy/IQmG9zyIq993eVoOiYJI5813HZrNeP6KSFdthZJ/kIo+exZg33ZPhlYR62OVsF6kTpj8hD3en9khB8/sA== 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=CK9i1Sb6CMDxC/MrOQyZSSKj/FvchdD2aupVYy3Yi7I=; b=n8t453xn8AeP9poWvILgxRDLt/Gh7MUQN+2ZDCPp2sSj4FLr0GRL2KLrBF+xDP929s66k8cviW+xrc26qCG4jnrelJcgxdM/9eFDkMUffj70DGvGafjf9y2xD2xagRIiPLdbeM4Tcb+nr/K/NeLzpZ9ER/dPtGgM+bFAJu0Za3VAjrhrzq9uIr6Hc3/1QqH03XpEY0kM2TwbMo5Xuo3aNRHb4y0P6uE7POHh6ux7RdPP3UGm053YIJLYKjiTW970VZHdrOauqACgOQWDHpX/8Fo0P8ulZrjM8XU7AhlEjP44/htEHKh3Rg9OQJJavs8grT5Oxe9BLM6TLxyldl7Jtg== 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=CK9i1Sb6CMDxC/MrOQyZSSKj/FvchdD2aupVYy3Yi7I=; b=W3K5A5ptwz/tT8Esp9389gdNNIYLq/ePvmUj9qZUhfbviv4UaN859xIGJN6+PoqVtgp7YBeJUF3/+VEbly0v/KLMoJ5f2X/GEr+2M8zJPgmb4MyCoSAZ3a5+lgrFb0KqzJPqLksCg9NYv1kSxrYERVnbQqH06XQugqxBnp+ght0PQynmCD7fR3EOZfrSlpaEsk7LVyM2t2UYYnqJWToZwwTN6J/NLNBzrC2IlT6GiUiKSQWq/1cncok/rtT9A4YnnHLz7dXtHBLNHI4wrLB0r85nxC7cwwKPpJxliZfLmUTIGEnznowqTeJTGBlPzG64rDvynZzN5Zo2Bhv70+xEfw== 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 v2 03/13] ch: add ch_hotplug.{h,c} files to CH build Date: Tue, 2 Sep 2025 13:55:18 +0200 Message-ID: <20250902115528.557133-4-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEYP281MB5646:EE_ X-MS-Office365-Filtering-Correlation-Id: 94bea440-6338-414f-09d1-08ddea17a109 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|10070799003|13003099007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?+06tnlTPTVeuFx+cd4bJ5H2w1G4Hg8P5ZuYTMsf+2neREKs20vLN3Dgm2HgB?= =?us-ascii?Q?EZkbFHxBkJVZZYDDNhD51GDNr3ERy36paGpo2gSZ34bQqdbFmxfknrbSwf/J?= =?us-ascii?Q?kOTq1sFNgVRP+5g4ZlxyPbHeOeEc8Q2cDhNN6btUwtn2dDenwnphNS1Vve4u?= =?us-ascii?Q?X66fLzDCblHLIR692Yq+x09pAqK8L97A1PsO3nb0rIszT4i/4jfdbPrBnxgr?= =?us-ascii?Q?oZt05hmh5FTp1kEBnPliRbSaeaxTTv1wpecfsbct3USriCK7DA0Nfzew1UoA?= =?us-ascii?Q?dNFSrJrIGl4qgLgZf8rUNsYjKHhX9onuvUVKlbKR3sHqqvDVDaMRKaH9C8AM?= =?us-ascii?Q?hTsxxEUkgZdiLN//NPzsSIit8ZXEw47/5ZCtkhoWrZyz44TuT4ND7dXvT1GO?= =?us-ascii?Q?T9prp/G7qIFc0u7EfWn7UHtAejK7P6wtDyKqFSkkHbxda+WXcQLbKB//9DwD?= =?us-ascii?Q?jIFlh6PdwLogevnxvBLH7+mSud9R5qcIZJ/Brrp/xgVF/gsM9trt4Za9ZZRX?= =?us-ascii?Q?VTO8fufve29KlM9g7dX0k6OBx17Cw3j+Wj7JQr2ivEEtcVfnmgymQjDCRo3c?= =?us-ascii?Q?HZUa/tYhTrqOh7+tHJx1PQy64z52h8uxaRBccuIUikssz2IQGb56y8fEwuyH?= =?us-ascii?Q?D9NET6f+v40xb7YAA63uuzNcSsaeNd3R8mFDowUR6P3YgI5lNiVgVI7bmKM+?= =?us-ascii?Q?jz6kbOU4e/yKMUUIDRB7VBamN/oWiqZ3PK1wCC9oDIWIDBk4BaMAb0Xsgsps?= =?us-ascii?Q?+3DLdz7dgMMHsucPzeuVuUWHrzOmVwHpBKfVbEr9jIw7x21+0rogTHN7g9Ci?= =?us-ascii?Q?m1U89mQIQBoDvFnmqBEGgCEvcZY0VPRqEz+hAB3X8JBkq5Eq6U4ySAILrRvk?= =?us-ascii?Q?Lf+2zjhnw9JQ+dzOr9Ch1pad6KxaQRFKfd63wVrd5PdLFebsdohJ5e9owdbD?= =?us-ascii?Q?K5VXLa7WvZfMPsCbeBouIzqt00z+FB3F0W/N0iGqykpI55rJyIWGlXq1pJmZ?= =?us-ascii?Q?Pld2hmtyxJP1HehaDNhIsJeobmOwxPBHEqsx/g8lyumboeQ+yEVYEIJ6R4rp?= =?us-ascii?Q?3B9H4ea92eU6XWgE+JSDWiSP6+6LCxQLwJJVFLlfRzKJEFI40U0Hk1GQUlOK?= =?us-ascii?Q?w+bi2Lij+3pMRakPUnxWYyRxidv6myIrCXbIOctIHNjomUY6iXlw4I3lIfhd?= =?us-ascii?Q?TMsJg38rLp5C8/A4w4fBiLBKkApKRyQkxUEkF3JwetS9otWqDtOB+D6wGf/d?= =?us-ascii?Q?CC7Z1ygAJaBC9UDgzYFBuh5QM0/IPQOD/axC/rNOp33O04zAPy/dQQRKYSh5?= =?us-ascii?Q?wF3qQYrFNDijjRMh7EKWi0SIKJbzOCBsWmv2tcFJk2eMzQx32D/ZpNOur2f0?= =?us-ascii?Q?7aPGv0t1G20YuYfEHga1rFGnYWWH4HyfqRi7mEjeGAbQpaAzFhT76GRJ3fk0?= =?us-ascii?Q?zEWkQs2JTiI=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)(366016)(1800799024)(10070799003)(13003099007);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?gS43PY92qpqh7rIgqcfsHnh2ebEuXKSsuPkMkft8dJegxF3EKVubsxgtByVu?= =?us-ascii?Q?IrOiuR31BuaKj31CP3soh97+zpXJSblNZHYfuXnJvFyNmRaqAYqgePOkjkoj?= =?us-ascii?Q?P2lK+LUcIVGA3YUyhRZLFuH2+baGTFh7S/yLErj1PH2YtSrIk+ahF+YMtHrs?= =?us-ascii?Q?OWaCcOzdHICROgoDIoLVc7X12QL+ogJKfpYV0y9odIE6UEzyaF4zeHx7HZ4g?= =?us-ascii?Q?l7OMQJcW4DMOXBL1PFj3Nz5wDpGzksmrCYtkOasPT9FNuH2allSR4UX9EhXy?= =?us-ascii?Q?sKFTgre1WCGjMCVAI5/+lxqjWSPybsAzAcIKJMelhJJEtUo/YNDzpK77AJfQ?= =?us-ascii?Q?p2RvK59DsGqw4D/MWZxdTEyCbqmA4iu9hnG7wmiWtGSTsmnROl1JvtTus7Kr?= =?us-ascii?Q?a5Kk9r4gYMAFS5TuRKlybCozUdxl6larr7Xt9wV1RGtBwZjnlIedY7uLFGJ5?= =?us-ascii?Q?iYgdZhSnSMm5pWcCppsm/SjrxTaueYiX6IWW6/iD2h9zektHe8pgdx5jxecn?= =?us-ascii?Q?En6S/w6IU5vPLxD7GeRlT/QpEQXgBf5TP0/fJ2LXO0aaRpBkkdP2T49XcnFq?= =?us-ascii?Q?7jaZ0cKHAwB8qvFbBVGe6XLXhrCygmc6yd7HBmG7COin4FWBDg4aLyqIe19y?= =?us-ascii?Q?M57VUDmkfWHb2V/EQri7iPrO2Rsxi3mAN3UxJALvP38r3+OKHZ5H5gg1iNaq?= =?us-ascii?Q?+OkG7HYR/12K36ZpWVh4vgc3HXbnPwZysbL2XokhV2qgYgvN7QDEPYIAaJ9h?= =?us-ascii?Q?M394FbDK5GO9X+gc83a5+4xrplz2ADmsdRG+secfYOWWfjy3+gt7iSQFkxU4?= =?us-ascii?Q?nqET9KYbJZBfVT0ijxEJneRFl5KEQDgUEQFF3YXfgYPKajHdY+lZzOGAB6Uj?= =?us-ascii?Q?Aw9ltfOKObGvJ8IXpAtgbkO0sICcQI53FhIpTpRDi+lhTh9LEQVMxdV3jRiy?= =?us-ascii?Q?8uokPg6HxsgqVEoXIG/sTFtSmnneuA6p1aoj0toRR1EQTDzyHfQuKEdPTgk6?= =?us-ascii?Q?/TRu1EVFNHR40kYVbEHm1+OE7berMPGenF5ciGXTe8RzgzcowAIzCebpD0BJ?= =?us-ascii?Q?cnNLvzfU4jeiH9n6UxdZz0nwzoDoR9Q6Wk4zKv8m+S1VPBAy7yIVQ/sFAud8?= =?us-ascii?Q?IWPdUM0U01DKGjfFFqbIaQ+JMwDLsGSJLAEiMS8vKZK30cbWozx9szRS6jfJ?= =?us-ascii?Q?Keivv+IspzwjkFguzPapavKZFmEJMn1FOM04zRhM+hIYSK9rrnOi9JwMQN5x?= =?us-ascii?Q?1k5Z6YF+q1fLaMmy/okmABRe6oWfGNptsZ/bfKdjUvoGZCEB0EjbKREromfn?= =?us-ascii?Q?rej82Z65nF7dB3JqOD7Ui8uMyp3NUtOSswnBnmWKUunlcmXxBdv2BlqifxBw?= =?us-ascii?Q?3liana+2cQIp1mQaibZ8/rhGVlh1tJbTNvY5uoz2gbZSAVO8jkDO3fYQYSZO?= =?us-ascii?Q?QwZlg79tpN1vFTa0ln8P7FUjZNVXXEIgpKZmbwZcFEeWs3GTbM47Sg+/j2rf?= =?us-ascii?Q?9WvMUCYCfknjF+C+whMv1pFF+q2nn7fvAMXj1aVcRfPbXSzpGP0f4GPrb1PL?= =?us-ascii?Q?0xQAEE+LK2ekEu/fzfCSTdCa3M360jZ0XeGbfJAXzr1aFi+JojEs8i39sCTV?= =?us-ascii?Q?fbDIrN2NVh7as3Yg8GSSzRS1rfY7CzcORPyt7VKwFoY8?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 94bea440-6338-414f-09d1-08ddea17a109 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:36.4786 (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: 5wLVTCWOlbd3azpS50YnGojvvTalHJmF/PIDQq5YeVmZLVDxxe32p8noVDs/Dr/TD/8iT2L584G0WNaKAXzekhW6V3yDlMWUrtRydOvvWs5VdO2spG+8Svz6V2/qYO5q X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEYP281MB5646 Message-ID-Hash: CCW55WLNGYASZRNINEYEDH3JVAFWOUAO X-Message-ID-Hash: CCW55WLNGYASZRNINEYEDH3JVAFWOUAO 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: 1756814289383124100 Content-Type: text/plain; charset="utf-8" The files are meant to contain all device hotplug related code. The first implementation will be live storage attach and detach. On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- src/ch/ch_hotplug.c | 35 +++++++++++++++++++++++++++++++++++ src/ch/ch_hotplug.h | 27 +++++++++++++++++++++++++++ src/ch/meson.build | 2 ++ 3 files changed, 64 insertions(+) create mode 100644 src/ch/ch_hotplug.c create mode 100644 src/ch/ch_hotplug.h diff --git a/src/ch/ch_hotplug.c b/src/ch/ch_hotplug.c new file mode 100644 index 0000000000..c46628e7e9 --- /dev/null +++ b/src/ch/ch_hotplug.c @@ -0,0 +1,35 @@ +/* + * ch_hotplug.c: CH device hotplug handling + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + */ + +#include + +#include "ch_hotplug.h" + +#define VIR_FROM_THIS VIR_FROM_CH + +int +chDomainAttachDeviceLiveAndUpdateConfig(virDomainObj *vm G_GNUC_UNUSED, + virCHDriver *driver G_GNUC_UNUSED, + const char *xml G_GNUC_UNUSED, + unsigned int flags) +{ + virCheckFlags(VIR_DOMAIN_AFFECT_LIVE | + VIR_DOMAIN_AFFECT_CONFIG, -1); + + return -1; +} diff --git a/src/ch/ch_hotplug.h b/src/ch/ch_hotplug.h new file mode 100644 index 0000000000..04915ba5de --- /dev/null +++ b/src/ch/ch_hotplug.h @@ -0,0 +1,27 @@ +/* + * ch_hotplug.h: CH device hotplug handling + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + */ + +#pragma once + +#include "ch_conf.h" + +int +chDomainAttachDeviceLiveAndUpdateConfig(virDomainObj *vm, + virCHDriver *driver, + const char *xml, + unsigned int flags); diff --git a/src/ch/meson.build b/src/ch/meson.build index cd20c3d065..bba7ee90ee 100644 --- a/src/ch/meson.build +++ b/src/ch/meson.build @@ -17,6 +17,8 @@ ch_driver_sources =3D [ 'ch_process.h', 'ch_hostdev.c', 'ch_hostdev.h', + 'ch_hotplug.c', + 'ch_hotplug.h', ] =20 driver_source_files +=3D files(ch_driver_sources) --=20 2.50.1 From nobody Sun Sep 7 23:50:56 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=1756814414; cv=pass; d=zohomail.com; s=zohoarc; b=Scr6L7jkJuHSiPd2QSKZKJ8/IQa1DJWCMFeDfiss5c1q1+rS1jJLJkqxigxsx0q5Im/DX3uqVdsFsUNIOtuBViQqNpYm5xcPU0Rc2Nu/BjN6oreFLK2G7lxZR/nwj9Jk0SS0gqs5o9DrX9bdrh1AwbvRYL701Nd4ZR5qjMJ+89Y= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756814414; 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=FztOKPgyUsMFKsU0lYWDoOc3dwbyI1ke3sOjNCdtI1k=; b=IaId9ypD4WhrpP5zXaJwd+ojP3eFMxwuaFeY7nY3gmJbQn+4GiBX+tHLwVtTo3BCOxv9Ykfb/5uW7BtMha5j3lIg8Lh4iPXkPU7sCMIDIGFDQYfiQB7fCeF/1SrPaM7ODRwIKiiZqubSIvB0a3t/iBCMSK9B25sxXpYHqDawTkg= 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 1756814414261292.533865483599; Tue, 2 Sep 2025 05:00:14 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 9B587441EF; Tue, 2 Sep 2025 08:00:13 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id ECCFA4419F; Tue, 2 Sep 2025 07:56:14 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 0CE7544111; Tue, 2 Sep 2025 07:55:44 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020083.outbound.protection.outlook.com [52.101.169.83]) (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 4CCEE44114 for ; Tue, 2 Sep 2025 07:55:43 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEYP281MB5646.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:e4::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:37 +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.9073.026; Tue, 2 Sep 2025 11:55:37 +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=UgZChLWnKVcDl2WDkAKD5NVuln5QA4DGgDl2fsEicA1jXkvfEtW9ltPQR6UKbiDXzyNif+mb+wFwAh/NOvjS0l7E0y7vBKxENhiJm0+IM6DtaslIoAPPpSxbVDebbaL1NCsHfgczH1dOPqMGWGEUeUAu53WfAXHLWqMWrWS6kSGBOCV9xy2M3QIsvQTvKYcNEDM2865TJwfJXPXpQQ9N0bAXvfmmEHJX8MH42kOCd0n6H9h17GmFNyUX30ES5JCo+5QU1by5i292aK0eH/S2+6yrqf+4ePLRHfU6Qp0e+Xqxo7pkewpUDWYpum8AYmj4/4h7OlC6nga29T6s3q74xA== 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=FztOKPgyUsMFKsU0lYWDoOc3dwbyI1ke3sOjNCdtI1k=; b=aHmz5HcpfjV0KUXQTuWyzGjhsTySHzPrEURxR7J3MrRXKPKcbeHyL5pbEEkLe0Zb9/M4BalllWyh8HZHrZDf2+q2S3g6xpV/a1qmH3Ee+qEsoSBk17m28W3JSw6IUJFqokTrefFsMLCSr0CZalr7TR2lHx0enCVvvXLiDEOMN/TXwXTXW4dGfJvCrIZI3qYzDvPP7si6OK6sALIQQU0/BFqVWIE0NOooOPo+NR4xYgordaLtwrETMwmSNUwtmpDitloKJJN6FLTrwuH6El8fNOmOy36jbv7mE/4Lv4VcYAnIltkp3DNVwMiuUvRgGl0PC6uvJkOhhRTYdQu/6Oa53w== 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=FztOKPgyUsMFKsU0lYWDoOc3dwbyI1ke3sOjNCdtI1k=; b=cNK+wyG7Fqwzp2cr9ybyIbW1Mxypsy5H+B6Puy+hLoggsg10Q0YEG37pA+yNvFCnVJNxVrMLQL4sRUqdq/hQhc5+IaQBUqXH9ol6xtJ5Tw3CDBH5qxUm5/5eeJ8uOUk9nUM+HknGzA445UMFHftarf4L0DS/2oDIR2XCpV9oq2S9SJJueaoHQr6+6TuQbVEUJhrUNVQMaQ5rIC2r7THBlgoQ8dDPpRVcUnHffHavYScqvj+G7ALKPS78kFjG0IoyFDgjNTwH5ZXS+5NjM1hvwuyA9TqLPnMINpwFDFaVXmxNWJnjyePGFw9+SfgoToBLM93OzfwXK74KIGGHF3sLMA== 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 v2 04/13] ch: call into ch_hotplug implementation Date: Tue, 2 Sep 2025 13:55:19 +0200 Message-ID: <20250902115528.557133-5-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEYP281MB5646:EE_ X-MS-Office365-Filtering-Correlation-Id: c4192e38-405f-4d9e-a474-08ddea17a151 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?LHZToyraVGpH+KIAoBq4U3v7qOumpIaGrSQD58sAlSbxdnix3yZerGNYr9uX?= =?us-ascii?Q?UQ/1wMBbkWrbWdLYaNxQgm09NZ3A1I3guCnm/4gQbSk7Q31xBg6k2hYEEpjv?= =?us-ascii?Q?wRVtmXUbtRnulUT5n0cnbXRabQ82f62SIClRHM+NiKv5c/+6mV2zbUqsLAlZ?= =?us-ascii?Q?4sHnl+wKlYu0l3ufR4f7fG0nduH9BhtM3ICBitK5i62NvqUh8ySsYhJ9Y2iV?= =?us-ascii?Q?Wm/twya3rO1SxnNq7A79F3Ho3kcAqRjxOhwHHN5GXP+2qA7Mk0VFZKzuYLcm?= =?us-ascii?Q?iIUpwpmfAzdilltCXrp+KLTSUxJoa4GBJnZaFdlewkSBmG5F6LNHnkQEFV2p?= =?us-ascii?Q?eB9XNIDFg0ksx6IxK6tarGo77nOxFd16f29bmt4MCDsnq9nEd/oyHdH3UVsN?= =?us-ascii?Q?SGR6T+Y9r5ZB/29eMM6IE49CswlBxHxY5BgzV0e96fFqg17781uS42B2GmNi?= =?us-ascii?Q?wBZ0oJgAcQJhh5GJUwEWF0voTvXKCgDP1o6U/e4q5k8e8g+LIkZsHpr0CDV5?= =?us-ascii?Q?x+TjjrSJFPGmeguptbAfp2unp+QYnRSubTAnfYAq6Lhb/JWOZBj7IDkGh5NU?= =?us-ascii?Q?4GpJDp3DckG4Xj1WKiAVljGtOY3WZJIGSeCL0Pl9D6IUOxd7pH0ktMv+p1A8?= =?us-ascii?Q?5RqqQ1X9F3zMBAVmhqAjT+EhllHncXZAOKhfvuG8qc57Z4qWBsA78NGNtjXD?= =?us-ascii?Q?QTiaib79+RoTjfiP0z+RRCBoG5VWKzefWQfrN/l/4a28jOk8Ghjy7DXyg87z?= =?us-ascii?Q?wj9CE+5dsYx5tZz4W5sgLOLJnDBdqMUYb8jEj59sFHp+7MRW875IH7+N85iM?= =?us-ascii?Q?EJCRl9shYbx3Dl2vodi3+Ha1gdgmjOXI9mNgLyZXD/VrjIGP6tbjQJeIGTX/?= =?us-ascii?Q?FtkuDZAE9s9Af+9xvQkEmUM+B+DM89ayqE+o3ttZm+dRB95HGJkrN7cNgFj+?= =?us-ascii?Q?1l2lP5ZpWaQ2DMdFldhSMi0mByZd/Kz+7EkD/gwujU8FtpuP16hx8gcw+qTS?= =?us-ascii?Q?b20rLilJEKz9dVwOx0SZvuw5vu58HlyXVSjXDdqypD0dV4vNbPRwChR8g1/U?= =?us-ascii?Q?+y3ZsyHzsA7TkEkrSA9WhqYOyAERRhW8BaVHTVz7filmXFh0G/WYkt3fOJgE?= =?us-ascii?Q?NIiCwmyqpniY/SgTXdADp/mJGywedDNy8Q6hH8AM3GspFT6LuDEHxexRMoBy?= =?us-ascii?Q?5TDlsRncH5LRBlClzhvHqvNduJd5SCkSkjLomZGND6oZpHEdO2VgvF2AhRiR?= =?us-ascii?Q?nOFMCnlqC1pFOEF1tubckA4sdkNqxOo1l9a316Z9cvGD8xSNokBET9cw4juh?= =?us-ascii?Q?nZlrjlNAFdegR1Ha0itS67thKTY7zXP3GEsdLAHmHDeV2dsTe0OMvS6XtWYE?= =?us-ascii?Q?cN2LfIHhz4ji54D7TJLnmOhD0I6PIawEBOqP/+wOfZEWoGd5nE4ZCsukQmb5?= =?us-ascii?Q?RYKW+eIqJ1E=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)(366016)(1800799024)(10070799003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?d+IfsE2tJUeJvtnRwsXl1GZpALNXs2hPc2BRlbpWSmogOF1UlyN6dbBonOKw?= =?us-ascii?Q?H38Ma6WKgTJM2BDu9iOTAyngSYq0udh8daXU6AuPzys18ssxHFAxhZM/v9hN?= =?us-ascii?Q?FI2SRB4lWdMWSd2AyL5a295C/eC7AQsDro1KtczFY6q4ag5YuNFvWxzdlzIk?= =?us-ascii?Q?OQ3glkE9ZYe27DUPr7Lz9tDfe+lmLWt26zZYhyyNsbseLSOpLJvv+69kMTJj?= =?us-ascii?Q?20UALlEo3iZR5kP0N9cxqVVniOkD+VPF8ULiffYGTWywmz8mTKjhvCJrpZiW?= =?us-ascii?Q?ZAoUHVGHhY6QKpagYWrl8uXBkLj/LoCai/A7bZ0bJSc24Hy03+z+8q7tcTqR?= =?us-ascii?Q?M75jXJL1xD0cqEgsfmYq5up9PO76RYAi403f8DTzQSuz+v0AzUnPds7MvYLs?= =?us-ascii?Q?Ew9yFVRi0Zjy7bClxdfpRO6cSCwqmE5iOW5hyZwrBV/DDFgs2fNOrXLjRBwv?= =?us-ascii?Q?fPYEYVm1SWhvMV1Xcd1F3IHSYNRqdgNB9P/FegM8CCgQbhs5OnkzVPVp+0pR?= =?us-ascii?Q?ZeiHdbCKP306W3FIojhT036S99ulvmMwwunzAdAhNKnSaxK8OUuBeP1tacFR?= =?us-ascii?Q?YM4dtjEoVQgcI4RzNZQyN96xitGP1SAPcw00aCM8ZR5HEOp33JqMaqgGQEm3?= =?us-ascii?Q?J4KdQ+TKGr70Wb/KoCLTyT5biQpAFEG7Z8GMGaIexki1rznWVvIO4pqe283p?= =?us-ascii?Q?KMjuJJqdS8sjwgdIO2a0Rx/ul1rQ+KO7ilZoK4vwfZiTzu33bPzv9QgUNNu2?= =?us-ascii?Q?YEFprm+dGvWLTwjApOLb/f4cykMYkFg6bpAxPS70cwSYja4p3VTNXcPTwPYX?= =?us-ascii?Q?rDGRn5PQJAlxOXhpLiLDLaj5406hgVYfNDGXrEYB9JH0u6iQiCImVN8RhGkV?= =?us-ascii?Q?Dz21kEt9CniVnIPcfI4cjElpKsZm/owqrwZQQdug+N4Kvwy15IcSnAQ5B/Hs?= =?us-ascii?Q?SKeiGMzerLS7hsWtZQ8CJMDVAONe5rfE/J5rHx5xDW4kMDBvI0U/2tIWfwy6?= =?us-ascii?Q?lxbAhqePJUpEV1jSUiAhTR81d95LxJ5d3nQTTp7VFyPR6VtEaI8tOtLHOonR?= =?us-ascii?Q?I83NV+jwRm3HoKdB6l0AgcEyuXVwhDjmB6DJZ8LLx8m2ekmzvV9lR4TCW7Jr?= =?us-ascii?Q?lwP86u7GTYx+KqXi4lhZzGeKVxPnqenvDXttJHLU+6qmCdnK0yPiwxy5mCpa?= =?us-ascii?Q?Ft1ImkDiURTyrmci6khEOfDZodcnN+AMc9HmEvqMI98C9csJ5c9v44lhpD/v?= =?us-ascii?Q?HXbIXSVEQv0iV2AikDt7WfxZ5ov6uOZ+GBIaXGu9uGKIx4xR8t53aLu+4FMg?= =?us-ascii?Q?/J1uOME/pjzj8FgpWQ8e4eUj7Wr1tipsp1DiLfsLVChc5QgG6cpOQa7cnaQo?= =?us-ascii?Q?s/PfrKKFn5POOzgZ2IBb7KkfR+Gr41zk94sAAENAe3AGU0F7vTnfMbE4S57B?= =?us-ascii?Q?AQIXU7N8I/r/e9WWhhP8Y9p/sGDkg1cANBc1YtbUK1o5cRjqVIt6JffJgn1B?= =?us-ascii?Q?H6q5JGf+r76X/IUcuNtYbCscOvgaz2n4gSE3SdSkuYOuGaq1prMwUjsseXjW?= =?us-ascii?Q?4kOmLXAdWVukv01Y9HrLPrlLwzV3tkTI/2bKq2Fo+LFSNgcuHZykCytRR0jC?= =?us-ascii?Q?AoQnV+cW7rrkYfV8u0RKHrB7M/SwAc2LsLL0Ay+e06tz?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: c4192e38-405f-4d9e-a474-08ddea17a151 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:36.9698 (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: yuwllB575vDLn7TtBem4WkW6qfcgd+3MpnFbdIA/49fnltutQDM/kaIxxQ1j94GyJa7LdJk6R1i+ncLMIV7JFDIeQnoaHjqmbxrHm1JTJ58+7y9/+Hw54DWK0DGDdrFT X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEYP281MB5646 Message-ID-Hash: A5E7PRB6XBBBM4C3ANRNWS6HM7WOWWEG X-Message-ID-Hash: A5E7PRB6XBBBM4C3ANRNWS6HM7WOWWEG 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: 1756814416726124100 Content-Type: text/plain; charset="utf-8" On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- src/ch/ch_driver.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/ch/ch_driver.c b/src/ch/ch_driver.c index e5e1bfd7d1..764efb87e9 100644 --- a/src/ch/ch_driver.c +++ b/src/ch/ch_driver.c @@ -25,6 +25,7 @@ #include "ch_conf.h" #include "ch_domain.h" #include "ch_driver.h" +#include "ch_hotplug.h" #include "ch_monitor.h" #include "ch_process.h" #include "domain_cgroup.h" @@ -2346,9 +2347,10 @@ chDomainInterfaceAddresses(virDomain *dom, =20 static int chDomainAttachDeviceFlags(virDomainPtr dom, - const char *xml G_GNUC_UNUSED, + const char *xml, unsigned int flags) { + virCHDriver *driver =3D dom->conn->privateData; virDomainObj *vm =3D NULL; int ret =3D -1; =20 @@ -2364,6 +2366,12 @@ chDomainAttachDeviceFlags(virDomainPtr dom, if (virDomainObjUpdateModificationImpact(vm, &flags) < 0) goto endjob; =20 + if (chDomainAttachDeviceLiveAndUpdateConfig(vm, driver, xml, flags) < = 0) { + goto endjob; + } + + ret =3D 0; + endjob: virDomainObjEndJob(vm); =20 --=20 2.50.1 From nobody Sun Sep 7 23:50:56 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=1756814776; cv=pass; d=zohomail.com; s=zohoarc; b=l7kCvNPJf3Nv5/g+U7AFQ65RWVPwjhC5XCzRAepjsMzswJf+xR8tmdstjlbSQuXo/VCpbqaYJxkvk6AZMlHsGuqvVZ5LSMkQOU7Q1Qbkq8voQP4AcwXAmgQLe/C7ujh4hi2lP87CCYHSJV3RDpJBV3kDPk1WOMZn/IenL5qMhWE= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756814776; 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=aJ1TmPVqvhybB/CkGBkp2sI4imy1qMA9NuyvOMirpL4=; b=DhmtXCp5SIb6KjgsKsrmUB/wKmIL0UixWubIcB3jwP7DmTBcWAYF2pvhLW0732yvNwhDM2SpvCc0BagVOBJtAZWkjA2jAUSnaEmQxwMMKuA+aGPyiDp8qXVhEndcV5GN2WaxwAJOJ0bM0h65OHmTKYdU5VjdfZ3bBhKnPTAWvC8= 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 1756814776597423.7075617339342; Tue, 2 Sep 2025 05:06:16 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 0F95B43FD4; Tue, 2 Sep 2025 08:06:16 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 1FE6B4448A; Tue, 2 Sep 2025 07:56:40 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id EF3FA440B9; Tue, 2 Sep 2025 07:55:45 -0400 (EDT) Received: from FR4P281CU032.outbound.protection.outlook.com (mail-germanywestcentralazon11022133.outbound.protection.outlook.com [40.107.149.133]) (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 4FB4244118 for ; Tue, 2 Sep 2025 07:55:43 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEYP281MB5646.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:e4::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:37 +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.9073.026; Tue, 2 Sep 2025 11:55:37 +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=pMn0/bTmvh2CkGF1e9ens5UTo7k06QCxeRGWVZLKWj8ThldSJtxXAVof1kKERdqcmF4LOfn/mJ2zYSmp/pT4cp+oDr8W9YfDBM6CFEecgMr6MEc93Ro3EeRnl1wXRPgHdjOqpFvtSYYsbIdEPB6/DydbrCkRtx8qXz+/kXz4wvdXwJfY+3Zwz3XO0Si6iERyG4k1jTL8T+s2Lr5Iz1lLQsnip1NLuRofbTuYgt5JvG2sl5RdJD/e4og+NUiT/L4vCMfNIEuqFv7kzhfvFDy/HWBDGsQdCDx4n8wrxA2wPn8VCP9cBdwB5yECGr7DgCmCayA9v7LLHSndSz+F+ntuFw== 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=aJ1TmPVqvhybB/CkGBkp2sI4imy1qMA9NuyvOMirpL4=; b=AbHvKLjZ2Kiz4pCiZEXpcDtMIY61CPX7OBhb6w090ZauBZCnuhvUmpx8Nci38yY0W8rfHSnl389Zz67Ro81FNp1fTnqPFt0DUxjiTcRWB1j4keTNqFGvPXkrO2Zka46xujaj6EHLho2QkbJrBw4tsTbyHHwBQk2qW9oshM79cTKubYctWP7/btXJyGk3TR/gvV6prXv2qOisJBW4mpKEWOwkpZ2O6NgLThHwxRRxZSQbEJ3r9dfwFt2Q9nIMrXQcnKnNjdML2JYuKMxXfYDJ/E4TC83kr3QkHjEfqPmxZE+fy/qIghgNZofIoxYQ7haES8TXNrwxOqcb6BOwtHVosQ== 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=aJ1TmPVqvhybB/CkGBkp2sI4imy1qMA9NuyvOMirpL4=; b=aCnN/EtsK3n7Z/MYySIcKU2roPsLI5lwRN/NB/095zVMj6e/XHtg6mCFI/NLvazX2VnuSzQREmqASSveftpiXtEIhd4rm67IPKs+UHnTKX8XyMdGidoMd4b8YVyEGTkXQGaLsVbn9IDVyCjgQw/Uda4xoMeraSSOOSFbyvFiMZ0iRXYe4mAinXyDqu746Ld2jzj4OBgXV8DhiyhZZixJcQoLBkfTEBlJjGAiVViAYCru8MYOISxVFpsWrsZfQJWQpsvHmUvJ0eJvtN+SF/JCLem1KWLCpZx2p5CWTbrsdOp4NSuF+d+Cgk/BE6fDBXaee6Uu9Z8lgDBZEk5wCrGylg== 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 v2 05/13] ch: pass disk alias to CHV Date: Tue, 2 Sep 2025 13:55:20 +0200 Message-ID: <20250902115528.557133-6-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEYP281MB5646:EE_ X-MS-Office365-Filtering-Correlation-Id: 33b9937a-e17f-4cea-32eb-08ddea17a1a1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?fCtlouiSvLFvFFkceKdGKUMlaCPkUjbtYRmU5iV81rV/yQSsXKaVd2S82mz8?= =?us-ascii?Q?rqUwInA6bVKGblDVgZbAR1kwwC/GDcjNW4WazV5jB+uAi+24wDkJ8kwpQqOL?= =?us-ascii?Q?hNA/Nr7IZ2kThqJdgoDk+eIbiEYdy6sD7eVWklUMOpgm64esRj9CVNiYJ/IG?= =?us-ascii?Q?sSD02rljwSoUIdSRiCZbrVbVg0rGf5tDgMYDucGqJDs8oqxUEbuqL1jYkLwB?= =?us-ascii?Q?7Fbos+8+XhqkytU0aK8OwlaeGdkFTqY720Y4NnP4rX33j8APgrvHNrvpU3Td?= =?us-ascii?Q?yrfp2JzyC+0nQywJOMflcTRsp8C1uf1ZPQoNaEKyi6Ea1VJ8UTTXR7ZF3AGS?= =?us-ascii?Q?vDvLjpNx5iKUoZ3Bf7xXtTqnpt/F68E7bbkx0Xq+9N2BrIu+8B+xyMndViOG?= =?us-ascii?Q?q56s99S9r9H4rxwUDkzEYCOmzmuT49hcGFOlU4OFX9oApT3Q4jYTqSsra/zK?= =?us-ascii?Q?D4TSKmbe3vqEhcj2pt0JCSuzNw8an5bvjDT2qgc19qweq/oJb+GSZqUW7Gge?= =?us-ascii?Q?xqCnp4vLozx54RoncmWh2p96atLSf8Qe9xhGR1AEEDNYpxQa12tTyocYOBKL?= =?us-ascii?Q?7B5YV+0rGAS577yAkT6pK8wnW79MKkwSqGPEwlY/heLPvpeDOKZeoF+Cd9iF?= =?us-ascii?Q?c8upIxMmLr+JuiW1TBzjI04fUQa0xKvXaduLELnU0wP4RGpf2cgtVoNXi0MF?= =?us-ascii?Q?sOsPyJHA5Q3jcNLuF6UNRMJiiVBhaWoU3LU19QdWM8SnLnucavyZwiQcTyWs?= =?us-ascii?Q?qZidrGxs20BHM0fQV64xn/l4cfdKrL7g3gxBJ3sof8JiWVJelGekpIUDbQMx?= =?us-ascii?Q?PWHBNsXyV2ewiZnof+nOkoXVcHz6S8eOTqZX2I4Fvy1OFQGRlDHZqpCPWwrY?= =?us-ascii?Q?EiuwRBUbte/bdPxHxSOyraMThhkAsi3APlcpEHAfiOuQ58fWOdXC9Wi8MVCc?= =?us-ascii?Q?2VVLKBDNh9+r4wFHBRW7P1EiRbGlg7guOc/J1xReHJqL+FvIWcyFY/A2Mb0x?= =?us-ascii?Q?WYCvzPjsftXyFLxErXZViZeZ136bcQ17QsYdSLWCchxfAaD7o2vWW8shU7jT?= =?us-ascii?Q?anmYXqutLOBdv75BN/uMAQKD4NNdySbNrPru8Fs0MwJVih0X+d6KS4icEG/A?= =?us-ascii?Q?ps1Ft4IY2DnsQvFA8A8IpCYgK7FDEQlwjsrdw2V7FJCPr995ReXcWd4L8W8p?= =?us-ascii?Q?ukQnj4E5l8vfkBeHkqRkItKgsdgizrMHYGVyBdxn/Dcv8uLUeBSe19+UvhyG?= =?us-ascii?Q?EbihRwQZglFP2urhpGcqRkRlRNnVSQjidq+a1GLkIy06ggJqQKWTjtOkMd0T?= =?us-ascii?Q?tJVjMRYL+Jlf4DR06mRHILsRKCzgc9ImR+uMoY5vrWLS3MsE7UeqglMZTjj7?= =?us-ascii?Q?iNJU+XesFyiSloX7Le2TKDv5i5ynGyrPKx9xyz4DtOqG9NQj1aG3rI7LujqT?= =?us-ascii?Q?GNZx7xzOaHE=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)(366016)(1800799024)(10070799003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Oip5+Y7uGL7AR6DL0cSqM+XTbhdy1p8JHCE0UKTZalawSCIwro8sX0tKMXUr?= =?us-ascii?Q?mmJuTxd+3aoEZQ0Ta6U7Js2M/xamq/xnguEK1o3R90+6JrKutdCtEN1f57xU?= =?us-ascii?Q?Wu6YQYV2VEs5si9jcADRHHUV/9Al0LXB2GjVGumMrgnWt8GzXGXH2DM8sk3p?= =?us-ascii?Q?7U4NSzms1p32TOalpmIQMpO1zc11gbS2i13TvmYbCqlWMTFgMxoldRdQG98Q?= =?us-ascii?Q?2JIjMCmb7qj7z2BoaAAxgeR8tfPuSeG7lu/pVlagazDMU9tuR7XMfgl/HTVz?= =?us-ascii?Q?068XrxgDM+kYvs9sFpAuZvVyF2jb7qekfP3h9HQPSGAaQy92WQbc6IBzzi2w?= =?us-ascii?Q?qsHhHXP8va4pSsX5tbhP5x5yDxbPihzYHMHl9QE7Dgeh3D9QMi5vpXv9T76W?= =?us-ascii?Q?LgEnzhoKo9TPHm3vQaYL59QjjfNtcc5g2P30NysfKzHI8mBW5bnUmbQTcP7l?= =?us-ascii?Q?LuQTtg5MR13x1Whwi511O7UgEU5Sxw5J9OMhGAEtxjO/tekU+tBCZxIErmQt?= =?us-ascii?Q?Z0A0so7dpY8DzMhOqKMNJ8VWzv80MznluTmtiXXRcVs7fkA4sZv8GOtwYal3?= =?us-ascii?Q?arNbR2Jfb9kRjCgoOqG/FNuY1DdjUXcXnCYI+O14dQlZH5SXpNdNs0iMoWGj?= =?us-ascii?Q?teeJcmgL9WAytJ7AAi+B+B9JldfyAJyZNmZ9ZGlQ26yO8COV5Oc1wSioufOP?= =?us-ascii?Q?5wLgngP2dmyxSwi8AoDKLHc75cWOsY0ITIF6JGHnInG9abeFoWzRaDu92R94?= =?us-ascii?Q?yHTvrmYr0NYLDvM0bH9/M+TYGvtU3KKEf+oSLX6NEpfqVtRI9kXBNlDeq0Ek?= =?us-ascii?Q?zNldaj2xUlrpsj98GZBQTGerZ/KNYGVotrFVMAL/9ZvzGaSahSiBCUtztAdB?= =?us-ascii?Q?MA26my2qlBnTBc//+vkJtVVPzR0Bo4LT6kw8pbvn0nQ/0K01dknJYWAozI6+?= =?us-ascii?Q?XcW13g6wfr0fLjjtTETeI+RQtWk9nzyUvYGYu2i7mgfLBqvRCCTX7jxtoHa/?= =?us-ascii?Q?xpoOwv/x33qmSxglNWs1LyvoP1y8h/fZv7viiwDfgqxQ03V3956EebTnLoYo?= =?us-ascii?Q?1Da9qiPErYHTiXrWC+9CGeUcaPPTvx+qsccBQqYjC+AB/Ko1y10RRKD0QmJi?= =?us-ascii?Q?zmZhTOL7tZ72EOiTJL2vGnpRgJoDJ5xcyYGK95YNB61rck1JhPfY8NAM+3fq?= =?us-ascii?Q?+7C0YAhTRWoDl3vi43D10oCuXx62tmkvzyDorhDz6YzbSra5MlyPOtVCOgx/?= =?us-ascii?Q?9UjaahfAkFPXeLEBpgHLebJSLlWCi+cSUX32IRM5sDjHf0M6unMOzFkvNz9k?= =?us-ascii?Q?gYKaJoVQjr3OJez2ytgx1WlvVVVOXhe0qu4H9wdvQzeC3sFQNnJM9wmbqMtg?= =?us-ascii?Q?e3NglUb6tga0q/qArJ8xp7MGbYdsKLSa4a2aS49Hnb4NAitkQukK+c6XcMJ8?= =?us-ascii?Q?dlAJjZPJBCwTaVLzrc714wxQUYXz2Z3aXVVtDsfCgBxIkmpOh7oUsk4D/udR?= =?us-ascii?Q?5O1kMEAhhOqCBEhhEvFJjlV7Th+LjdCcbIwA0H14gUDDVo5OMjVyPfY8ZEuO?= =?us-ascii?Q?WJv0ZNW/1Zc9hqwWgWppqAaLXUsiJNCvJO9O4IqhWQV/GHuh1W+i3+7HE14G?= =?us-ascii?Q?rDovvW+MskAc5ddkeWSzwQYpvL0mOnxqeyUeifUa0AJE?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 33b9937a-e17f-4cea-32eb-08ddea17a1a1 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:37.4853 (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: yaBCkdAlK247X6eZQtgOWoEJvbS9sEfCKdKE+d+kYlp/7BZ6P9rbTMSxtsTlWlof6vRrPOftG3H3EJaEMfG+m0WJEp67CH7MuoP/M0FkqJsLx/lyT8HeqxUPWizgjcAs X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEYP281MB5646 Message-ID-Hash: P364VAMBAZRZ7M2OALSYALR4SYJ6KU7F X-Message-ID-Hash: P364VAMBAZRZ7M2OALSYALR4SYJ6KU7F 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: 1756814777271124100 Content-Type: text/plain; charset="utf-8" On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- src/ch/ch_monitor.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/ch/ch_monitor.c b/src/ch/ch_monitor.c index 6bf877fef3..d369236183 100644 --- a/src/ch/ch_monitor.c +++ b/src/ch/ch_monitor.c @@ -249,6 +249,11 @@ virCHMonitorBuildDiskJson(virJSONValue *disks, virDoma= inDiskDef *diskdef) _("Missing disk file path in domain")); return -1; } + if (!diskdef->info.alias) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("Missing disk alias")); + return -1; + } if (diskdef->bus !=3D VIR_DOMAIN_DISK_BUS_VIRTIO) { virReportError(VIR_ERR_INVALID_ARG, _("Only virtio bus types are supported for '%1$= s'"), @@ -261,6 +266,9 @@ virCHMonitorBuildDiskJson(virJSONValue *disks, virDomai= nDiskDef *diskdef) if (virJSONValueObjectAppendBoolean(disk, "readonly", true) < = 0) return -1; } + if (virJSONValueObjectAppendString(disk, "id", diskdef->info.alias= ) < 0) { + return -1; + } if (virJSONValueArrayAppend(disks, &disk) < 0) return -1; =20 --=20 2.50.1 From nobody Sun Sep 7 23:50:56 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=1756814657; cv=pass; d=zohomail.com; s=zohoarc; b=DR/4FOGFXCa38t2CDs163Edo7UdMcw6yrjKBkMYBfu/tzj0Er38wO+Esv16XAWNS/DJl+jzfsTKwWtcp7ST4NDbhW4/USXbRjyNx+oEKQgsLQKAkKCJNqy8cw4kggJxbmUAgAhS/mht+pKzq+bkljoMhA811YpM1hQOWzMPvnEU= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756814657; 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=fU7w6vEDcVK5hxWJPKUDMrcqwG+UvP0HGpgJvrZv8Sw=; b=L6FiL0i+4tIcPsR23DUJfOr2IICxt+S2MfWUnYXfYNR5eCiSzMDDk666ZNvk5f6FHSvR3KF6wh74y2khp4TLs9Zgb4sDVY5kXgzT95wLVTIwD+XxdgqCgf7BPvc9iQPaarHLFIsy+oJbJ7IlXddsnwntSBE/Ut5n/dx4r0P321g= 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 1756814657473679.0684241490428; Tue, 2 Sep 2025 05:04:17 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 4FD08440A3; Tue, 2 Sep 2025 08:04:16 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 5D96C44410; Tue, 2 Sep 2025 07:56:32 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 8D196440B9; Tue, 2 Sep 2025 07:55:45 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020083.outbound.protection.outlook.com [52.101.169.83]) (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 904AB44120 for ; Tue, 2 Sep 2025 07:55:43 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEYP281MB5646.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:e4::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:38 +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.9073.026; Tue, 2 Sep 2025 11:55:38 +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=SWqCz5uuZIQwTRcIb8vcrmx0dhADRrn3hNzoaocPlpVoLpSgyzvHysh+Y67vbEAG07qOdv50f4Kl/Dh7pE87y88wbRfoLf6YCj8to19eNh8URIu4dKHK+qBk87ddDeZzbcyXywg6VWyOG9K9xymg14D6m61BEBImFN+upI3jmpfSMYjQuDDTsM6LNJrkPzzuaJi1kayvKHG0qByZJVj81FLwZ78quFmwlWOacLFGWJaGDzSL1nw3doqsBC5qerYP4eJ7D6voYVe/rMLEctikDtc+cio0zAZyTCC6zMUaFgi5H/EbQ4dlaj/EIEFGHzCMyeHpzbi1ec1iG6Prhb1m9w== 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=fU7w6vEDcVK5hxWJPKUDMrcqwG+UvP0HGpgJvrZv8Sw=; b=F9eqh9ydQrD1Ok7LuKLsP5ETNiewQhx0vv5kiCzRj4ftrRDSV8+4xl45V/0d9/nhFCNjmVZm63JPm6Uz8XmVeZd/6V1p23XWetH/H1x+LFudqZWFcSp6FtKypyMmYaRFoPlbQbUVjH/Pqbswdz5EHIqhVEyMCxb08VBeRP+McJ9v4wEjpNhPFkhuSdm+RFHtKevM63gD1/qM0iSJFsFF/Mv5h0fAcD58rGgfccDIdbqVpxPG/KRsqdEb5hN47KVQVAeIICwunCOI+nCuOLtsD9UFjucHQHQoiKXZY9GC5X0VCwUo3BVfmg5HGvMjSPFL0RGpuHHMrd5fe4tRj9BtOQ== 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=fU7w6vEDcVK5hxWJPKUDMrcqwG+UvP0HGpgJvrZv8Sw=; b=TAF1+KVObzmfYRRKoviNbwMVBwwIA6htpGxONdeiyei9siuQijEU+tKfkhtEDsw4eY9WfW0IWNUC5lCtQb9tWQIYqfMEUZrz6C2CffLkBrO10sL9bO173+3xwLmvCcU1/fBrT5gjlSy/NZPFYZSfRkAG7tt3nI1oaTKXhj4VWWk85SGgrlpuM0ZAj1awN8SH3QOkt2+yOG7CGXBVWBpqe3kmVT1Cy5vQL56x8dnimfgA+nrF2xV805rkNM11o3+81L5uhKdIdHUme7JTRqdGgZBjH2HPz2TbCzKs18ITJUlCPKvNYQpvlb3B4hVRFTpnso7r2dPO7mlHwYebOLRssA== 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 v2 06/13] ch: add ch_alias.{c,h} for device alias handling Date: Tue, 2 Sep 2025 13:55:21 +0200 Message-ID: <20250902115528.557133-7-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEYP281MB5646:EE_ X-MS-Office365-Filtering-Correlation-Id: c8e0c757-e0d9-41f1-71c1-08ddea17a1ef X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|10070799003|13003099007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?UBwoLo8kPA3PIfguEzpJzDJTljxPgeMju76pmWPHgViqPPSURDtbLlic5Imn?= =?us-ascii?Q?a7p32/k7y9LcfLzGFvy7WQ9iwKX0qZsZ4GWXLVGN/gWVN4P9Px+FC/yNxOoN?= =?us-ascii?Q?LbKZrnHst2vwNUrEtnGaeEjJN5q9auADS6tFJ4NQKBK90Kt2cdW9h5cSDWmO?= =?us-ascii?Q?tdeISHh3URflLPeZSDxQRD5kosVEqU116GjFFQl41xz78Pf72yglgvgKk1Pc?= =?us-ascii?Q?CoJV34igDHbwRv3g/L5cXdtLhify/8gt6t8jRt6VUEm+o2Dd7rnf6158Jq6Y?= =?us-ascii?Q?KAv/wY+E9I9VDGesiIJAbJXiKyLueeM2Zzx6QbVz2IPVJ6RUkwVCY7lQXxrw?= =?us-ascii?Q?OpmQ0EQ5T8THifBmtVhY+MH4ANPC4TxNsaiLyZZXXnGZI+VPE25ABsJAxMyX?= =?us-ascii?Q?qXSSVL772ksjR/37nj1oOyuQVUrUmFQWrYLXeiIsRbYgPhjhUSvHftyvulxV?= =?us-ascii?Q?5pxFmyiV3OYSaqvfZjdlpolw/ukKei03VBY6EVUXYEZNmbmDfr8ZD7qMqQH9?= =?us-ascii?Q?JRC3NVQWbzF6gAjwV171+OnK0hiEQH9axtwFzMUTnNgszrSboM4VRLZqBVq0?= =?us-ascii?Q?vhk/yvL/ibt0KLSy2DbPiPbE08/DniBR6zwkGkaIdiOdpxxSY5RTQMJ0ZtFV?= =?us-ascii?Q?imiTojmubIzPxfhxPuIK8y6KDlENlfxAcv/MQMfH+3sChsEH4qjd5g3vyM7H?= =?us-ascii?Q?e+jsEr/ihwf1kRCqBTwZy8VxSEfTQYPuacVOVvZGjZmWpqba381czdVW9dmU?= =?us-ascii?Q?3hfJ1KDRx0fKDc2Q+beCoJx3yB4ubFmRlEGes/p21/kp/GcNSAdTdbK1TTET?= =?us-ascii?Q?ekb/CvSifioltiaV3SJ1+SaaG+Td64YOLVy5yzN8OgxnQT8kDsk/sjIK2UrJ?= =?us-ascii?Q?JUkRmaMHzEkiDN7S9bMN2+nhAw8Ir9HhQaAGC5iI9pfiyNx650IwBFyC0A1F?= =?us-ascii?Q?rchgHK+0IOv1N9qeBAIWsRfz2gMNaztz4XUGUNz79NUnY/FWEViaF8j5pImN?= =?us-ascii?Q?IsOPgGSvjNFih6BmM6Wb5gVZ5U9c53AYikFj3Swl8qHNg/9e1RHwxrLfSC9m?= =?us-ascii?Q?FeAc4TPKMR3OXttEWmrxynEg604QB/JwR5V5w8I57XpTt9xvRTedh2u8jgEL?= =?us-ascii?Q?vfTlzDrpRa1SBBVS+gfMwOvtQClDBnvwYm4bu4VEVLwdKSFNrg+i7kE8zhqx?= =?us-ascii?Q?a27q2VdUcXA7VZ7gNUmDuF57qYidgPoFWZSDETZK1gS4Xe/b08ibsYY6QhmC?= =?us-ascii?Q?pV5T9NtpG3scnZ0A019STzlg7MmH5eP+oUurn3w03lGjromHjRL3MJRuWQHO?= =?us-ascii?Q?9TQGx3C41Poiz09flQByF0ZIWp1POJTJ6hsD0sLLEHrD0VP0muQwPf0T5hs5?= =?us-ascii?Q?hCFXOVi4HvvgjerITWPK+wARBxXE+CPxLYq1ZIaNjIa1cab0MwoWM1tIFglX?= =?us-ascii?Q?uQeQI9S1a2A=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)(366016)(1800799024)(10070799003)(13003099007);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?wtwfl/V/putyr6p3imrlHaga/Z++y8QPBqo2ZWFqxuaIPnG9yCvF08MAMkLb?= =?us-ascii?Q?i8woiRj19W4LIlVO3RJKQMpDvh8FuPC/+lRRVyX6RSIN86zVjQqXAspQKMoZ?= =?us-ascii?Q?ucvYRhaZhB/M6tZpCf8+umlaMKUQeOGEy4eCvxXBBGItiaa9Ne3YsgKlRjUs?= =?us-ascii?Q?eNDWqZbxBgQgI52l1TrQbJGLF9YjKCSzw+I2zPdtmWUvS7Z1WgadPVJ2qCLr?= =?us-ascii?Q?YdDkZGYf6afhaCE9ACyjLoBMhTjirXlqJXDG3fMoy1Cex2eyjFCfcV4kd23y?= =?us-ascii?Q?swcZXmEOpXLm8QFU8Gg9cJgu8Tz04lkHEqenN1kQG+YLhnkhsSKYQEfy4wmD?= =?us-ascii?Q?+kEGjKY2t6dqzsKEDnwUEsrCFn5/HMQ6vjtHh6gM52jN0792LQMjuJYNoD0B?= =?us-ascii?Q?vV6SR/LJCcuaPiNrz0TBu3vevsU2fmf4fD/lNc9yrVrG0Empk7bH6AIaADnW?= =?us-ascii?Q?EtNn5g/+NenizyTMPohUQNWVXXma2S4XQqg4IZWlkma0mLyJOswJch6Hxflu?= =?us-ascii?Q?yXfFjMeDzM5baYUA+7lEbGr8YdxSm8e9mN2slq+kk4Y1ae1CRVOZiu9mlvHf?= =?us-ascii?Q?bmpnrMV/OdH/NJAHVVJth78GU1is5wQQHl0oDSGsP/q2pPBjY7y/lVeyfG2w?= =?us-ascii?Q?euK9P6/DbqvFIOhcOQxluXMZIOj/oSnrWVh02thWlipXJuMEUdQ2VI38O95G?= =?us-ascii?Q?Iuk1JxTyPI2l0apVY3s1MHVpYbmoA2tCZeY1YnY+Wu/m47rBbxHE3LSUfx4R?= =?us-ascii?Q?yw8weSq+9s1bNwFRpvvMgUl9mQo95NQr6VXS62lG4yUKPIpHoNtMeFy5n/Xc?= =?us-ascii?Q?vqXuyzrUjMbgHmy4jl7sbvCeoMDp+9HilQ6Ds44wgr8LcoWLpKtYuFoNFo4d?= =?us-ascii?Q?+ciL0GNQm5/MjQJb6+e+zCnZvjJAXuVGu5HZILqPzSiSWRue3r69fOEnFWGJ?= =?us-ascii?Q?U+aznsMjSb9rsl9qfv2U5hNYUVVo1n4V5F6p42dfv6qVYyUdiuzloVyNcaSj?= =?us-ascii?Q?JldcD1SQwLJjq2tjo6S2lDcYm7Fv3HU1raPoHnWD9KKC2Vnsi74ZaK6FIl9/?= =?us-ascii?Q?8j2vHLEE/mgXHIdmFXOeNrjVI9GwGHDa89g3pNzR4Idbzdv+tpa9LLG+yJ6T?= =?us-ascii?Q?jVxVWuGiHhaTunN7taaJF7W8Rz/0pS/oaW+qmshDsqwAj4cu4T9BXddyYsJo?= =?us-ascii?Q?HRzSmFaE3Ov6Tq/XbCpd2GqHk/iaQg+3kxx8kPfUwFuT82LA7b33b5jG5tzV?= =?us-ascii?Q?BWiVeOU7jL1LJ87VagbodgDJE9JrQZ1gN2my7jU3bcvxTkjrVI0FWYTjhTWm?= =?us-ascii?Q?BYyorJZAK3RqeNWYZy+rfrrAtHazjhThq9A9RtwUxrNUD8LBlb78x5vdcP6r?= =?us-ascii?Q?wUBRvqYUBvtk+e20d+q+CNdnXZEc1F1QPhPGruhu4rfI/FIDJ3hrH/S5oCFS?= =?us-ascii?Q?hNoHoMSbO7wGmbsNBEJG2XkHEpY1KnWt7JzGaS3HcluRrgJ42IjF8AMgoSuo?= =?us-ascii?Q?ZF9/hY+kvd/iVWj32ydDSDv6H+MHDkq+QqQKtEL59UIgBGuHBVYuCIvFObWG?= =?us-ascii?Q?HRI+opHgAjA4OuDH4Cu/qEK80LhYY9kg+VplrqDWXXLHHMhbOjlAXkGF8BLs?= =?us-ascii?Q?SCCX0OXD4OA9Dd00nyQQntdmvR5fx2Nx234yTZrZEPpE?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: c8e0c757-e0d9-41f1-71c1-08ddea17a1ef X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:37.9767 (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: K/DSIirSzH176A7ReUUUuaBsoFj/mHFFK7cPgTQgtUSHp+fbJUb4RkXEXOcGsCg79+GG/xMQP1sBmk6skkULAeqxeBtpYrIg3TKGCdmfqbKl0zvDwKeQzyX0NgBcKm4Y X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEYP281MB5646 Message-ID-Hash: HFC6JLEPAFBLZQ6TCSYIB765ISLAD6WX X-Message-ID-Hash: HFC6JLEPAFBLZQ6TCSYIB765ISLAD6WX 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: 1756814660037116600 Content-Type: text/plain; charset="utf-8" On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- src/ch/ch_alias.c | 59 ++++++++++++++++++++++++++++++++++++++++++++++ src/ch/ch_alias.h | 27 +++++++++++++++++++++ src/ch/meson.build | 2 ++ 3 files changed, 88 insertions(+) create mode 100644 src/ch/ch_alias.c create mode 100644 src/ch/ch_alias.h diff --git a/src/ch/ch_alias.c b/src/ch/ch_alias.c new file mode 100644 index 0000000000..63bcd9f212 --- /dev/null +++ b/src/ch/ch_alias.c @@ -0,0 +1,59 @@ +/* + * ch_alias.c: CH device alias handling + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + */ + +#include + +#include "virutil.h" + +#include "ch_alias.h" + +#define VIR_FROM_THIS VIR_FROM_CH + +int chAssignDeviceDiskAlias(virDomainDiskDef *disk) +{ + const char *prefix =3D virDomainDiskBusTypeToString(disk->bus); + int idx =3D -1; + + if (disk->info.alias) { + return 0; + } + + idx =3D virDiskNameToIndex(disk->dst); + + if (idx < 0) { + return -1; + } + + disk->info.alias =3D g_strdup_printf("%s-disk%d", prefix, idx); + + return 0; +} + +int chAssignDeviceAliases(virDomainDef *def) +{ + size_t i; + + for (i =3D 0; i < def->ndisks; i++) { + if (chAssignDeviceDiskAlias(def->disks[i]) < 0) + return -1; + } + + /* TODO: handle other devices */ + + return 0; +} diff --git a/src/ch/ch_alias.h b/src/ch/ch_alias.h new file mode 100644 index 0000000000..81e20c27c7 --- /dev/null +++ b/src/ch/ch_alias.h @@ -0,0 +1,27 @@ +/* + * ch_alias.h: CH device alias handling + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * . + */ + +#pragma once + +#include "domain_conf.h" + +int +chAssignDeviceDiskAlias(virDomainDiskDef *disk); + +int +chAssignDeviceAliases(virDomainDef *def); diff --git a/src/ch/meson.build b/src/ch/meson.build index bba7ee90ee..b3e9c03832 100644 --- a/src/ch/meson.build +++ b/src/ch/meson.build @@ -19,6 +19,8 @@ ch_driver_sources =3D [ 'ch_hostdev.h', 'ch_hotplug.c', 'ch_hotplug.h', + 'ch_alias.c', + 'ch_alias.h', ] =20 driver_source_files +=3D files(ch_driver_sources) --=20 2.50.1 From nobody Sun Sep 7 23:50:56 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=1756814359; cv=pass; d=zohomail.com; s=zohoarc; b=H4YM/Zh1cJh2KfxaKmJwEVGF4/cLRYLJ2BmfclAIr91s63myx2OXCgl3+3kukbg9rXZDn9lBbpSBtehPDfC6q1q3I/xBoegmo18BeP550wBFXs/nmGDzGi+Cq0q9vd37B6ExVf3Jvun4VjEMpfAOuGrRk9yiwKb+rQUfi25qFDw= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756814359; 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=r0p4v6wEVDJNDdkBVnt6JxzPrzWKUZkexqOGXGyZbTI=; b=Y2bffpLOy9BAPUxJd6C6lezb+umlXNwR3IoiAuZT5ONW184X5O7Aq/YYUUDWHOUXWKqRfv7fp0I180B3HV6Rl1gMLWX7dn7wXUtMewsq39UR4QDPajJ4lHnFn7VdLsa7EyFf68CtB/KS79zMihpUJq9BTgni3KVq9O93u/dQ8SE= 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 1756814359422435.0362595418127; Tue, 2 Sep 2025 04:59:19 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 5C0B943FCD; Tue, 2 Sep 2025 07:59:17 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 372B44430F; Tue, 2 Sep 2025 07:56:08 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id A2E6544123; Tue, 2 Sep 2025 07:55:44 -0400 (EDT) Received: from FR4P281CU032.outbound.protection.outlook.com (mail-germanywestcentralazon11022133.outbound.protection.outlook.com [40.107.149.133]) (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 9BFF344123 for ; Tue, 2 Sep 2025 07:55:43 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEYP281MB5646.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:e4::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:38 +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.9073.026; Tue, 2 Sep 2025 11:55:38 +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=BCsDll8oosXRndqjL4r0/43px7SsHLWMXclA+pL7tuFtPwoVXnjvAdy9UPSN+ofPi4+SQVVNzwZ9u+wMy7CHz2HsWBBmgfFsw90hen2VlHP/KEvenl4UU6Rmbm+vH/I0YxNUKgEbwnYmUXPdHSEi8rmla73QYAvaMefh6pxNa6fUiB1SNUFhwQ1n1IW6AoOEHPwhQQTdsGYKLUkc+ZCfxIyGSApgJ4OsateK3fsbto3TP1Zb/3OQc8q/jEe+1C5GN/3Y6WayWACDOT6ppnoFSAinbR6wJIstY0O4xjKNszjWTr12Wf4Vw/ZBJX4t+biNbPUvQ4Zsd8w59GsWdd3b/Q== 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=r0p4v6wEVDJNDdkBVnt6JxzPrzWKUZkexqOGXGyZbTI=; b=pr0m6CoEaH6aUd//EnhlppbdKBAWKyKqUBJyjj/1SNRNBA+TvdQhGN3NKB3FuY+vffdaocnYH1m5DUulk7wene8jxnA231f2zoqk4XOtRJGz4yhLIV494NZxL14aXAqsAt9yF3WdVm72HAqMiCbf0JB/E16pWjDnsHZmKczIOYf6uz48Wg9t7OkBdsj/4MPhap5eEoWLkCmCYcsGH8sWq0BjFcRCcn6gerqlGhL84Lr1SKqDzpa5x1pk5tjo+a5EQAGFNSy9DhMu+mFT9tfKRcrb1LbJN6ME/DyLcec2S1VaDn8x5ckDkyvfLIn+/UctSMrQvRaex5XK6+lcuKlALA== 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=r0p4v6wEVDJNDdkBVnt6JxzPrzWKUZkexqOGXGyZbTI=; b=ZyDo16Y6gBrQWJ7YrjOZQ2axWpGJPbW0pWn8nHc74bg39LUQ3iEPL2Vb25VudCfo3pQUOGDwWAkoZCcEeBMIG+0oq7JPeQPuR/VhBjS9qZrSr9OVZAU1PzMBIudE+pW9dDGgP441UKSjDTd6qeAUZvD3FPxSL/eDTRzRGBvAt8iEbF2YaHGq7avjvPeKbfx0uh23Skt4eV4hyijoyo8ue1zTMUSWnp+mcC6eMG0tSfYRkUIFR0E97N/z2TrZc/bC44vXAQ88//1P17mEwuU/p5cb9GsVf5IXp1G+Q5nb4FH8v5esKT5SesPJrgngYJEzIvN4ZQl1BoFo64Yr3qyx2Q== 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 v2 07/13] ch: add virCHMonitorPut function Date: Tue, 2 Sep 2025 13:55:22 +0200 Message-ID: <20250902115528.557133-8-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEYP281MB5646:EE_ X-MS-Office365-Filtering-Correlation-Id: 65a86f90-a7a1-4a9f-aee2-08ddea17a23d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?6m9bTmm4QNs9utyCZy4ak6qQoaJ1NihAUBcmPA11xt5FOb19LBhT+xjdTlIU?= =?us-ascii?Q?R9fcFpZxf7RUMW7GpZuxc6pr++sioxP6eKAA1hDVXKzHIcf62C8cDeeiNc+e?= =?us-ascii?Q?0onjk0pWUAHh+iDaFmYqF/R9ypigl5HPal9LvkK9+PuMaWtVghKff/9k/PET?= =?us-ascii?Q?Bxzz747qjRHFOetqT1GL/Qt+kQcaNSRPMCcnJP9LE/JQYRx+gcTjkTr7yPm6?= =?us-ascii?Q?KbPX/4b6y6cuqvPv5sfNRzBOeAfVYq5j2TGNg5cnG4y77PBn+MkjWmmz+jGu?= =?us-ascii?Q?m7/XGhTxLwPJj6bytDpmH1ItjJfM5zGOuKnRNwtxcHv6XG1FLO+ZphdH13zQ?= =?us-ascii?Q?+SYpI2RQMeF+pCsiQCs1u2msxrHsyYXr/+KJLWWt4IiW8GvlachP8sq8hxPi?= =?us-ascii?Q?RDfHHvr1xgvVnNH/AT+MZu09qoGQhDLdrbtBxdYws3Fkxl/uvTTE7R1YKaQn?= =?us-ascii?Q?HUUe8g8uBE++QsMNdCJ9Ie6mxvQjYQ8OMpcdeLSXGX2huPrdxRAqipLjLeIA?= =?us-ascii?Q?l5fK7emWZO4oZ0vAaTnGQ+cRBFQpCY/4xbC8LytYJThvK0wKb4Qj5aKm9DsE?= =?us-ascii?Q?xSv+n2JZVbCcKcFP3zatr0ZJhk1KTWXICoaL8zlzNcgwMPh29nb6u31USh+O?= =?us-ascii?Q?U/tG33VM+TxV7FUcnu24tEysY2tmtz0WYBb3d0yCMNhM3ZUQg0fAL93qVU/c?= =?us-ascii?Q?dhOEA1zdabOjnQDW6HbhLF747GihVT147ULBOi/RAgef+14ge7XRiLdxkapV?= =?us-ascii?Q?MUmn9CsUPGqlUNF79phSeX+Ig+cFxFjYxjrKrq9k7FyMR5ooCR+nFkh8xVVC?= =?us-ascii?Q?WJTGQn3DZ+sJg1bkNACmK61O93DXOVY0SwXp4VJ0oUEZaaYF7X+Z2P2JtD0D?= =?us-ascii?Q?PRSxrbbwXaiyNKJJvzAx5hN3e/H3kxBILu/NTYI1EjqTb2ziSexpAVlHwXun?= =?us-ascii?Q?3QjnX+EG4mvqIAk4s+/FtTZBNz1P6O/EeWn29i/ri4J8dl4SAIdyboiByBUt?= =?us-ascii?Q?7uTaaZ0nUCKyMpyjbB9IHqOKBkmfPiRqbJmRSd4k4HDkTgA72/Hxn/Uticgp?= =?us-ascii?Q?t5M9uj8Z+WpxEkgiC4cThaIvk3qZHJKAC7dfz3FQRVQzTTWLIMB8L79I3Gci?= =?us-ascii?Q?eYKAMMQ3eOi/Z+TYZsLW6wvBLjuyn8lZylx2FVJxqBHH3Pd1aOJj9JHJKfuI?= =?us-ascii?Q?uB3JekLt17Q5mt3nPttz3yHBlvwqlBOC5mrunnifJEP7XrbnD766DUcoIdXh?= =?us-ascii?Q?VVbpPGFKmoxF4PMsQdIBQ9gdfjHK5bOVVfcp89HvlNxSGIczRo5wd/5k5UyE?= =?us-ascii?Q?HieNUvsMgOaaoktikAvKwxzrH5ORs2ZvMkIndjAXcyEa+oGtJM0ARiQM8Mog?= =?us-ascii?Q?HceQ0lUpmCScjJyHWODc1bqRByPup3AlH1qafT6SCQ85wWtK3TNe/l0cZ8NM?= =?us-ascii?Q?JoUZC084fA4=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)(366016)(1800799024)(10070799003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?oD7LJV6mWyTtoB/R4NVdIBJFW1uOtjCCutpZRiBVX4QpX7l6NbPZhdtyfSCW?= =?us-ascii?Q?QaXrZQmJxfshFX0sNm/avtdyFntvtkS7348xzVe/SsabNs39k7kkCdLJ9cts?= =?us-ascii?Q?VYB4KC0qnBgcCpe63fJYg84HABmlPZkeApS9uvD5v6d7SeE+8xhonyUwD+uC?= =?us-ascii?Q?ZOMLvBeBfvp8v91vMcG483L+s9cPUb8DTgtcPhqZ0XfUWt7ex4GOdcSnCmWp?= =?us-ascii?Q?ZJ7QytAla20TwkmQ2X1bL4uOf2ATbbycV8IveKU7p+pXMRanPn7r/URYRoJf?= =?us-ascii?Q?B2HqGUXx8404secFoiOWUX/uo31h9oyEus5Lpnc+oRBM8QEO3jA4ghx+ifYW?= =?us-ascii?Q?4SG2p7kb11/WF7UxMvsgUNkLoG7Ki7oQpjmKodFdL/z+svSqLxaZvrNIyqeL?= =?us-ascii?Q?tUacBN3EJYDWzuMSWvtE6VJRjx1iEYpiCGsOpf0cmEforGvVq3tq9p9V8pjo?= =?us-ascii?Q?WCtpSlLIdZV0+wePM3FjfPiHBTRBO1KZwYWIzKTu/+puwXTC7QRnlFdjS1F7?= =?us-ascii?Q?1fPWZc/68DrOjqRmGRWWX8OXpghPdIx4ltNwXXCGCmGCZ8/ESyiQvaL6Gnbx?= =?us-ascii?Q?aEs3lkbW45ehQ/XGd07yd+jhfcD1N9oqjXIQane93dVxRa6Xf1ei/ZGhGZjk?= =?us-ascii?Q?vaywOA3XXnfFBYEZq/pVXf0gbdxjoHtB3jzzb6pjUe9ZkQh0lcIpGSYWHMe+?= =?us-ascii?Q?lpw5a9RfJ1TTpetI/6IVRlyktcXi++kQPOfZfpjaW6SxRyYDNtkIoEYaUH9/?= =?us-ascii?Q?G8ljUkiuT+FtX9OJVPpgUk0gY0WITVI4t87t4QIZwwahw+CPUCI9BJssgLey?= =?us-ascii?Q?opFR5TQ/2yhvHsSCzXZAK++MXz4XmGsKw+hYiZEvdk8bcYNeo3PPoqwdIQNV?= =?us-ascii?Q?IjomdmDQlUx3PMBiJU3n8iQgAFkd3FDcJBmRBXSXY7dQS5evD1uAUj51APGV?= =?us-ascii?Q?fY3t9bAVHXor5EhkYAxHfJDJIpmlixyW/YgtaoJQA9k/2DqMdMweW85bexwA?= =?us-ascii?Q?IbtkNhDpvTFsnvUXDSNPFwBlEE/+qknTO1N23vR/v0HDlwgNlCL3zjAYyTC0?= =?us-ascii?Q?fWw5XOdIVtmg+JBa2RGX8XUawgSf1zPIytnLH0qLvnwrRJMW1rG4gDl40b1U?= =?us-ascii?Q?96Ql2T2hBmNPgobIjbozmH6rtrua3gC89uEZD8TrCShN3p3LDD5wRFo2s1hL?= =?us-ascii?Q?HMt8lNormRSzbZvzrYyaZgf2p3z3u8qfOnQi1vlufBgrseXRRUj88wkqTglm?= =?us-ascii?Q?mOHrzn55Cm/81d35/GhWTnMKIFQvoYEMc3yW8rCx0xSfimwxkn7X1fsWtc7B?= =?us-ascii?Q?zimf92/SINHre39/PgLSUvJc6q21O+Cbgf5W36K8nWeskDZig6jbAMwFn3aQ?= =?us-ascii?Q?uoGQrR5XrujAXGle2N/YOn2SMwcSOSoqgzAeP1u3aGsLUzAUgVIJ1VHExUbB?= =?us-ascii?Q?ZSF7pxPIVIcDTTUOZeoAlBD2iwoqayN+IydEoq9lejJrtAdSleUlIoR3RvQN?= =?us-ascii?Q?vc7YKSCxxWGfM949AfVggvtpfvD3VRWxOn8WCNHIKcwjTlReUul5vea4Hzb1?= =?us-ascii?Q?zwfJ62NngTn1E3HDysGZ2tt5rE3ai0Nj5yulYuz+7i8lPa74iJzUIpnxJHdE?= =?us-ascii?Q?+2dt8IB23vfRrwPEl1wn3uuZH21hBWLGQqOeSROk01G4?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 65a86f90-a7a1-4a9f-aee2-08ddea17a23d X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:38.5049 (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: AVcIFU+wQhPEidlKxTiadNdnIgZgDZcuPF1pkHJHaZiRYr6yohPCeZaqUnAdEveE10f5sRvsLPTVN9Ee2bCp79BqUMbk236tseGynk5bgz5EmlRKRGcjF8LQf1sENCoU X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEYP281MB5646 Message-ID-Hash: HK735AOQLZSIZRSODSWXZVJKO4XAT5MT X-Message-ID-Hash: HK735AOQLZSIZRSODSWXZVJKO4XAT5MT 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: 1756814362185124100 Content-Type: text/plain; charset="utf-8" This allows users to call API endpoints that require passing data in a generic way. Previously, only virCHMonitorPutNoContent was offered. On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- src/ch/ch_monitor.c | 61 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/src/ch/ch_monitor.c b/src/ch/ch_monitor.c index d369236183..63c8425b4b 100644 --- a/src/ch/ch_monitor.c +++ b/src/ch/ch_monitor.c @@ -62,6 +62,10 @@ VIR_ONCE_GLOBAL_INIT(virCHMonitor); int virCHMonitorShutdownVMM(virCHMonitor *mon); int virCHMonitorPutNoContent(virCHMonitor *mon, const char *endpoint, domainLogContext *logCtxt); +int +virCHMonitorPut(virCHMonitor *mon, const char *endpoint, + const char *payload, domainLogContext *logCtxt, + virJSONValue** answer); =20 static int virCHMonitorBuildCPUJson(virJSONValue *content, virDomainDef *vmdef) @@ -866,6 +870,63 @@ curl_callback(void *contents, size_t size, size_t nmem= b, void *userp) return content_size; } =20 +int +virCHMonitorPut(virCHMonitor *mon, const char *endpoint, + const char *payload, domainLogContext *logCtxt, + virJSONValue** answer) +{ + VIR_LOCK_GUARD lock =3D virObjectLockGuard(mon); + g_autofree char *url =3D NULL; + int responseCode =3D 0; + struct curl_data data =3D {0}; + struct curl_slist *headers =3D NULL; + + url =3D g_strdup_printf("%s/%s", URL_ROOT, endpoint); + + /* reset all options of a libcurl session handle at first */ + curl_easy_reset(mon->handle); + + curl_easy_setopt(mon->handle, CURLOPT_UNIX_SOCKET_PATH, mon->socketpat= h); + curl_easy_setopt(mon->handle, CURLOPT_URL, url); + curl_easy_setopt(mon->handle, CURLOPT_UPLOAD, 1L); + curl_easy_setopt(mon->handle, CURLOPT_HTTPHEADER, NULL); + curl_easy_setopt(mon->handle, CURLOPT_INFILESIZE, 0L); + + headers =3D curl_slist_append(headers, "Content-Type: application/json= "); + + curl_easy_setopt(mon->handle, CURLOPT_HTTPHEADER, headers); + curl_easy_setopt(mon->handle, CURLOPT_WRITEFUNCTION, curl_callback); + curl_easy_setopt(mon->handle, CURLOPT_WRITEDATA, (void *)&data); + + if (payload) { + curl_easy_setopt(mon->handle, CURLOPT_POSTFIELDS, payload); + curl_easy_setopt(mon->handle, CURLOPT_CUSTOMREQUEST, "PUT"); + headers =3D curl_slist_append(headers, "Accept: application/json"); + } + + responseCode =3D virCHMonitorCurlPerform(mon->handle); + + data.content =3D g_realloc(data.content, data.size + 1); + data.content[data.size] =3D 0; + + if (logCtxt && data.size) { + /* Do this to append a NULL char at the end of data */ + domainLogContextWrite(logCtxt, "HTTP response code from CH: %d\n",= responseCode); + domainLogContextWrite(logCtxt, "Response =3D %s\n", data.content); + } + + curl_slist_free_all(headers); + + if (responseCode !=3D 200 && responseCode !=3D 204) { + return -1; + } + + if (answer) + *answer =3D virJSONValueFromString(data.content); + + return 0; +} + int virCHMonitorPutNoContent(virCHMonitor *mon, const char *endpoint, domainLogContext *logCtxt) --=20 2.50.1 From nobody Sun Sep 7 23:50:56 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=1756814828; cv=pass; d=zohomail.com; s=zohoarc; b=jUOKTAEbS4NYD9kLKa4v5pYiPNua3BUmvIiz4YD21CMEte2nNuKGLMqPMUCGOej/++gCsYDQ4hZRRXO7TpepfkxqNieQXgwhB7sJCkSrlWLQIBFugCSLlwxUx0trSsoxVE1su7CXLdzR8NIV7z1/scADO9Qle25BstuIOZO1nv8= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756814828; 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=Rm5Gy6NTCSAGXmdzx1bg6o3wHzUnxADI8byCdm54uO8=; b=jml4oavNqMg3lIdfXyhf6W4O+SEVdKoKYp4ah4hgGsIuib7BGpFDI5kL/gzq06YFlRHwERjjDg60U82+7wDppO+nvGS9HLTv26ZfOOggJyT5iBckRyESfiaqkvDubK/txWsKuhlXi/LZZ4IOxGRwmZAqBPJrR9qxRHPtbNwUu+I= 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 1756814828110931.7313793639768; Tue, 2 Sep 2025 05:07:08 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 32D0444284; Tue, 2 Sep 2025 08:07:06 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 5DF49444D2; Tue, 2 Sep 2025 07:56:44 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 0FEDF3FA2C; Tue, 2 Sep 2025 07:55:46 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020083.outbound.protection.outlook.com [52.101.169.83]) (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 EF0D744124 for ; Tue, 2 Sep 2025 07:55:43 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEYP281MB5646.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:e4::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:39 +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.9073.026; Tue, 2 Sep 2025 11:55:39 +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=CxuUU929BOgXejl2x/p8XMGBWqmOFgYBMX4bCVXeszkCeoQXBr0dMXf0ToM2EAmCGpd2uT9cpdtB4up1YmFp+9HB1Mc9qkgH0Nra7lGD2gqU7t01wlGpilFRbR5E8rqZDF4q4D7Xn/9XQHManGXPEs8OkQLpVPJ10C+ZiJKvSIt9OH6+Q5Chm/o7/2ueASPv8bxd5W9JV4/CnugeiqVRU8BARO4HmSOCu9vZkbu+PZC7Ax439NPGoRk279zeAwq7iR1goUSCZOPtsPs1x2HfM/WHeupmE9T7osSqEd4Gi0LD/9d54wS8/y0MvhhGBtTN8ZHkdhg5iimZIgC2tC3pjQ== 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=Rm5Gy6NTCSAGXmdzx1bg6o3wHzUnxADI8byCdm54uO8=; b=pKNe0LOoPJWphC+hqPO3B7YVT7Ub550yP2bEa92ogIQoqJObB1B9WKhyKnvCcgGDj78GQRowYgjcqcEWB5WhaKog60kEyY7gH8RDhedghsgaaKAzCqGRvziQCGoRGadlgY8uWoawuoOZzjsFNTUlhbQnXox+sw7jLTDpvcNscJymzvN9dZH5LHoKImYHEJfFsf9BpMEni7Wn5N8/VyUglCKahNc20zRObZmMS+FKTOjCAXHTqYqf56yPWIH+OrmvlOMPNqD5r7m5/x+bTH8aBSDqa8sDD1pNq658x7u9ZJzIgEh73DJhGFFJVJqJDO6nj0zhOx1MzBzOQpCEuBNx9A== 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=Rm5Gy6NTCSAGXmdzx1bg6o3wHzUnxADI8byCdm54uO8=; b=KhLZTm84Vd95K2RjgUvav3kQ/NnKnvKpg49hc3JDr0/gSkZ3kW+FPUarDeOUvxtCRpWow5ZLud1Q9MRDkKVGBu5SuslMBS3xoQ2n64FGlG52c/aC0E5/1dJgRxn7y2f8OHWnis1ABNogBvbHnO0zicsJOoHPz5XxV2nu0jvggA5qXcFebop2x1pAfWo23EWC4L1/y69VxwbEEqIC/QQRcv/MxK/iXyB+N0WpHGfBbJj99p/54wDQZ9VUB8vIcXqixM4V0+trMbz/U0B6FHUciA7FngWb5jEsCzQK3M3NuVQssYALdyj176MMSAnoVcXeQfP/pq0Mg6KemE4+vq20vA== 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 v2 08/13] ch: use MonitorPut in MonitorPutNoContent Date: Tue, 2 Sep 2025 13:55:23 +0200 Message-ID: <20250902115528.557133-9-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEYP281MB5646:EE_ X-MS-Office365-Filtering-Correlation-Id: 8217db76-9763-4b86-01a7-08ddea17a283 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?LYdtWsO+j16MlX9zidvIqvazJOKBZqtExx3yeIxhYhMPdN7SG/AeQan7jaPW?= =?us-ascii?Q?7pdPZo10yyJ+RPxWHG44Fouf54DpCo6aoiS3/mPSbzHRH1PkjGNx6+TH8kG0?= =?us-ascii?Q?IjL4uhlg6buVFNnjvm6ztpA4tEBy1yLHgxC8YbgANz04JQAP/nz0oeiT2q5D?= =?us-ascii?Q?oLa0i+n+LeXa0z/yQJcK/NRcepq488fJR16Kw/TfhrWlILecmCFM0BFLUqZK?= =?us-ascii?Q?ds6/x6t6lXmjsv/Sz4aDSRCKZEs8IwzmrRMvphzm4b5DwOi+LGUDuI7y4DBd?= =?us-ascii?Q?1IBiobKCOCNTlMIKbpxO5N261zc4S3e5A4vPlDonTWmjn7vp9eX1bNpcigOK?= =?us-ascii?Q?SO96eUMebTOneW5gikTMD4lA5GscT2GXakbm+ZTezAT4jtsHeW11ToO1TXYk?= =?us-ascii?Q?GMxe1Dafuku+PXHk3PDvuFjgKduBUXQp1EBKKVCNe/1bSIYdmaSuL4KRv9sY?= =?us-ascii?Q?oo/JWHgLbPbVZ5nZlr/Sg48ea6G3Pzlg4c+gnbU0T6yp7ZjP2KV328jgIC00?= =?us-ascii?Q?US/HMih6M93PfqrfJhte8AC3ho3WMq6KZEsFd1Lnfse6BFc15i62VvgMwLY8?= =?us-ascii?Q?wp8HcjWZShZvYIpoGr+9Snp/FdYNJ9y6fTsnoTNsN1t4q8vp6GWHFz0DS2/A?= =?us-ascii?Q?ifvVPmL1R9k/kYzTehaUCIZYaBoonDdLS2wSyxCiUDhQX+fwNh2D/wJXlVgs?= =?us-ascii?Q?XZbAIpHH0Y5yeqaHROlBWTUU/ojOgZ61P2ajnMmXHZ4850LCeAyvLuq5BvF+?= =?us-ascii?Q?2IJeptIDFtrMPx5Be1JFKWFX/VH7TeZ6rZ/J0iHhtaFFVNgXnsbQuuByAA4X?= =?us-ascii?Q?CnQlNZAWQHmBymfs6EDa0cm5TTQLToxWwjb3zLMken5x+BFON+pdzKmb2h9K?= =?us-ascii?Q?bsYhWnHKqBC1t3zsnXwZ6QlBQxKlQ/yLcPDS4FdB+TRBPtfCpp2R34m8r7Eh?= =?us-ascii?Q?kXqSyuMbBvq7ka0E+Lc4uE7V6hsU7L5WeETkjiyH7XdD7RRwcYPQSwrNRG7y?= =?us-ascii?Q?tdkvlA9yFj5J8NV2+BLniCdGrygiyEUc6Bl1uKU2IR6PLCskqmddIJzk4MNp?= =?us-ascii?Q?HH39VJGfc7n2F7tvdQ522TOq5ebfCSXIdUWUyckQu7/vloMGKRDQbHgtqJCv?= =?us-ascii?Q?fNZen3Mf8jQXMoQSwsElqlbd//pO+8J+zsKahJ9dTRvgoenYhqkNuy0J7ZiS?= =?us-ascii?Q?Hi3TCbQ9zOGZ1BvH/IR9rcHV1/AdsiSfRFzgEI5O/bVoa8UxsuureXBJ6VA6?= =?us-ascii?Q?ixDHROL9HEZSzuBgDOuzvz9KN5n7yaF9Mt6rKh2kQCFI7Hc6pMkDOEgKnuFs?= =?us-ascii?Q?Ag9kECytfOzccNDZ7TbG5W0dyh8gWAoy9x01b6a7nYwbw1UZjEGCepu9Acup?= =?us-ascii?Q?mQNYY2ubpFt+Bb5DsR4Lu7heTJ2xWCwICQMH0dQoYowfzi5Gx/fxUBUsqdB5?= =?us-ascii?Q?Zz7Ek58imWQ=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)(366016)(1800799024)(10070799003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?oPgiQe86OZB2SgwVW5xU5wfluttPYovbFSd/Yii4Pzp0ZvLmwptf/TxKFIUp?= =?us-ascii?Q?oF/FUTE9AaBwfq7GTjlNb6pkng5TMJvbKOW5MoTGR+b/NPRBvKOiO8EuqPCc?= =?us-ascii?Q?PDA5edtw1ScwrtI/w7OeC20VyNlFpAXYbKBg+uITh21svH8o8O0ZYHtvG8OE?= =?us-ascii?Q?ffe3XnZCAd3qtnlEIPNWpO1T6WLuIGwHlHdSyLRh7QLMsq1GAcgj7P7GWk3D?= =?us-ascii?Q?xCFcvm9J+VNE4okU9lRzSywZBjvnrb7ZZRaucdgKXRyzTyeuJYLvdC3OPHIP?= =?us-ascii?Q?HhwFoKfz1RjjQq6U5lmmOSRM2OmYvIy04wD9leW0QGLIi4OwEpB4xZFyGbe8?= =?us-ascii?Q?L8tuaMa4mS3LU2aYUYBBtL0d1d3HODl5hZ9wgzCPZ3+Jb7MDeV3Fiuh+DUr1?= =?us-ascii?Q?rso7W7W4ViRDG4YOcbUGRav/Pmbb0Xlc5GekIYbLrfkYjhr3IriHTlVuAKXK?= =?us-ascii?Q?M4h+NbGL1l2OxuyVNuG7Tf+WZgYeS3qo9eMUkMpHW/C54clm5shzrnoLtNMs?= =?us-ascii?Q?9Vp0rcAeRuCSej8NS8XUqFtQxSjm8D0XoR8bItR3Wdpr5uiDveuj+zqzj01F?= =?us-ascii?Q?Z4d6y2Fn04tN5bzfOn/jFe3rVlckKjfzxpEy0iuDr7x7uO3Vk9sEK21yqzbR?= =?us-ascii?Q?o3YyUuIbnOFiGGnhtuQQCVX+nwz5x1OaC64YnO+WNAtuuEjScg/qpUwWdGID?= =?us-ascii?Q?h3vXG6rQcFcrU1hu4VkV43rZNySFKnAp9bZFg7tpK/BQGVYhXpvNjtHSDm94?= =?us-ascii?Q?/mm/8LPa5oURa+L0J7JWZ89ZgxYlwkNY5ft5vkBx1ZPXN1D3JTFuFSYGAZY1?= =?us-ascii?Q?+xT8oKJfBqHKi6be/tYnkal60ikMlf1Ct2uUpfIJP6WdeBax8FCFRCEX8RNh?= =?us-ascii?Q?qNnh/gpElaoGebrVwe34JZFiMdHbWVL+oyi1By7Vx1wiR5Wykej0hK6JOfQA?= =?us-ascii?Q?EvNNOXnfnESqC2JximGRvGGRAZ9a68TNFaN/rFuUp6gZYoV7EoeAwNR+EIci?= =?us-ascii?Q?7jOkI3qTbGSAhWTPNitfresK+E4m4C3bGdYQFKPptc4JLPIA9V0ltgDR65ah?= =?us-ascii?Q?hfD8j9UmZvqn8PFMr1dEbsvo+xREWp6hZG/zpFEDFvw+DBy54D5OE1OtwFmI?= =?us-ascii?Q?Rvjiq8BkbxymTjm6rDe2hetN3VLYFMwYOPXVIbjjPbKCfi/dwNPNYy8geYUw?= =?us-ascii?Q?N4Xsq02fzi19/0K0QKwFDeXfk9UmkydxDJ96Qlwb8qYKALGNT02Z9ft98k4B?= =?us-ascii?Q?SiwwUl5UFulFOq0kdrDG26UbPN1bBuMTGCsqIS9kRC04jD4GQz1zcr7SsqkP?= =?us-ascii?Q?D/km2EwHxJV/jh3jsGohpIS55BMFHwiy/f2RTz9wE7KyVxRNHwcuibgsLZXV?= =?us-ascii?Q?RNQgOXQCcA1n2bOJu7DnARojwsZTa8V8fktCC6vzk7XOqXe3t8kvKr1qam9+?= =?us-ascii?Q?FBh2my42+xfr6Ew+hh4q4QFbLTu27cXZ3+95o5Z+9z3etSeyhOtXK/alxJqO?= =?us-ascii?Q?K4f/ZQgymtr1ID6hUoxNw/iaQ06iZooUlWLwLK4IHo4KYpYBYuDhGo0yJkbQ?= =?us-ascii?Q?3ya7kke8bkI5wq8S7HBJXu3AYUJwleOGW946PM6NdA9OXtr3Ljca1bX5bjbB?= =?us-ascii?Q?PZ0iBm59e7gr1KMrDSMC2QRVnRbHPBRgOcg2+GrxOVQC?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 8217db76-9763-4b86-01a7-08ddea17a283 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:38.9999 (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: lahLy3qpZMCU0hcRKGD+KJkoBrrAA50XHNgUEmItO2Pw/EYxIRbLao8WS904D7OzVfJ9Wt5ylKry6fnP4walrx+gtPpA2/Mgopu8MbghXct51nbHFkFawodUnUE4BTB/ X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEYP281MB5646 Message-ID-Hash: PX2KLNVY6NS54RTSRMXYMFHTNJTP5BLC X-Message-ID-Hash: PX2KLNVY6NS54RTSRMXYMFHTNJTP5BLC 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: 1756814829808116600 Content-Type: text/plain; charset="utf-8" On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- src/ch/ch_monitor.c | 40 +--------------------------------------- 1 file changed, 1 insertion(+), 39 deletions(-) diff --git a/src/ch/ch_monitor.c b/src/ch/ch_monitor.c index 63c8425b4b..5f3e2adbee 100644 --- a/src/ch/ch_monitor.c +++ b/src/ch/ch_monitor.c @@ -931,45 +931,7 @@ int virCHMonitorPutNoContent(virCHMonitor *mon, const char *endpoint, domainLogContext *logCtxt) { - VIR_LOCK_GUARD lock =3D virObjectLockGuard(mon); - g_autofree char *url =3D NULL; - int responseCode =3D 0; - int ret =3D -1; - struct curl_data data =3D {0}; - struct curl_slist *headers =3D NULL; - - url =3D g_strdup_printf("%s/%s", URL_ROOT, endpoint); - - /* reset all options of a libcurl session handle at first */ - curl_easy_reset(mon->handle); - - curl_easy_setopt(mon->handle, CURLOPT_UNIX_SOCKET_PATH, mon->socketpat= h); - curl_easy_setopt(mon->handle, CURLOPT_URL, url); - curl_easy_setopt(mon->handle, CURLOPT_UPLOAD, 1L); - curl_easy_setopt(mon->handle, CURLOPT_HTTPHEADER, NULL); - curl_easy_setopt(mon->handle, CURLOPT_INFILESIZE, 0L); - - headers =3D curl_slist_append(headers, "Accept: application/json"); - curl_easy_setopt(mon->handle, CURLOPT_HTTPHEADER, headers); - curl_easy_setopt(mon->handle, CURLOPT_WRITEFUNCTION, curl_callback); - curl_easy_setopt(mon->handle, CURLOPT_WRITEDATA, (void *)&data); - - responseCode =3D virCHMonitorCurlPerform(mon->handle); - - if (logCtxt && data.size) { - /* Do this to append a NULL char at the end of data */ - data.content =3D g_realloc(data.content, data.size + 1); - data.content[data.size] =3D 0; - domainLogContextWrite(logCtxt, "HTTP response code from CH: %d\n",= responseCode); - domainLogContextWrite(logCtxt, "Response =3D %s\n", data.content); - } - - if (responseCode =3D=3D 200 || responseCode =3D=3D 204) - ret =3D 0; - - curl_slist_free_all(headers); - - return ret; + return virCHMonitorPut(mon, endpoint, NULL, logCtxt, NULL); } =20 static int --=20 2.50.1 From nobody Sun Sep 7 23:50:56 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=1756814491; cv=pass; d=zohomail.com; s=zohoarc; b=mCqpv2AL12l3Ew8rMWPXsgFYD6c3AnMrcJQXyCsmrgCgPVUj55EaewT/BWgxm5kFlfX+TLFkFKBBZYFkAcA31HZrvRb8C+/hDFSGnePm9mjyqoYJmCUmlsFmA31kilaCmkGt1HTh342kTC/ODmbSM43jc7X84Ik1Fg3FP4Wlf8Y= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756814491; 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=AAkJVayhaiRZ00jX8jqMKYNRfTbtR2hpyLmQE106Y4w=; b=GS2zD/oqRAkxaoyVflCXEPxxtmVI8Vl8VjyLFxeSWPVY80SGoOedz03dwep64CVgiJJfF4ygmKX+tDQzUBqMs8cjl6KdeVrVRnG+1qJsezNBsBlLDoXx8U1f79+EXCHGem7XzBfT6uDMLok85fR5VKV91bh3WxYZ6jScymGDXQ4= 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 1756814490993373.4355384514455; Tue, 2 Sep 2025 05:01:30 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 607DC441C3; Tue, 2 Sep 2025 08:01:30 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id A21EE44389; Tue, 2 Sep 2025 07:56:21 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 2CC3C3FA2C; Tue, 2 Sep 2025 07:55:45 -0400 (EDT) Received: from FR4P281CU032.outbound.protection.outlook.com (mail-germanywestcentralazon11022133.outbound.protection.outlook.com [40.107.149.133]) (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 EF0874410B for ; Tue, 2 Sep 2025 07:55:43 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEYP281MB5646.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:e4::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:39 +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.9073.026; Tue, 2 Sep 2025 11:55:39 +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=T/ia9WujKf4Nd3P3QLNqT9gZ/b61JJLLtDK2ZoHWjhFBCy6If5wnf5MswkYUE7t2XkvYkYzIZzH3Jx3PH8Ap//bMVak3I4sokphBWOEqkyhwfo7L6zfGsfjV7GVhzXES6Hbj4/mJLRjPUzAjpI/3wMjI1kjBW39D01mMj1W65L3U0Td01hxnoAhGmjDWgfi+fXBxgiILqz8HpDeBkAa8YQbepQT/7l1N0leOHLGO5dGM1kXYFqumgN47nWmXAgKryo8cHObvggwlv9T7hlbwUGAIhv1ppgtOQI6A5t6yyBXQeKYccSf0z8Oz1Dw1oXxyHTyXbEuSxB7nV3i2fTvANw== 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=AAkJVayhaiRZ00jX8jqMKYNRfTbtR2hpyLmQE106Y4w=; b=QCy4nsOZj2w07jwU2/JMSlSNtqzjM98mseZdyEvO/WDVU1zwGn3Kit8E8Y3IcgJ9QOwDLSxClgdNRP7cSg4b/gySLaatbFB6gcWtFrjsRHoM0K10mCYAGqandUQf0p+Gt1NAGVKuw8Jb9osRp7IRedpvDZnnfAf9EbNID44xn2zVRSRaafmKtskyrGiIhZTZvL59+cyDXx+ZLdbu/q5hfw2EQ02p7++j0J2M1xWIFRpc0ce8noSB+Bx0o3AlwhCTQ5dFj57DCgvuF8sEvDDjmxYKDWyt9yaiwhENcE+JlJ9GIK/uL964fV4SqZVFyuAK0z0JpT2PooWdsGFVOCmaqg== 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=AAkJVayhaiRZ00jX8jqMKYNRfTbtR2hpyLmQE106Y4w=; b=Zb006KFxXt3ql0GnKUgkp6JyE/tShbP8jaOpGC3UgjZYVdwd5b6Mlo/+jHm7uRP7ZvVVPFaBeEfGDfGX8I9gGKOyzXrNVlXvRU9PjcApweajwzCidgJRld7XNbvaNoP9gvHMuZuwXgv3iOg+X3mCdsu/CI+yoI8KzS4N0CWxIdZ1SqW7nQv40iNI0XImvyhugfkWjzH+j/YiTxl9K1eW7y0GPuyaBbNDjbl9DMIMZ9JWGjqvszVwFyCqc+ktBkBKNFc671iKvHugSA1o7vmieOJi7WpYcMdLeo+yXhHjgojepUi4XuXQQ/Jwh/PA4rY3efdvvfnuQVkl0ddwO3CE3g== 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 v2 09/13] ch: add disk attach functionality Date: Tue, 2 Sep 2025 13:55:24 +0200 Message-ID: <20250902115528.557133-10-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEYP281MB5646:EE_ X-MS-Office365-Filtering-Correlation-Id: 6a175bc2-8f40-4223-fd7f-08ddea17a2cb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|10070799003; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?k9WYtz1nB/PJlRfNl1ovp7sA4Fb4iy6+dT3qkdwJ07B4XfsH0LPValAbCzAA?= =?us-ascii?Q?0lsIHeaCXovi5HUWI3Owggda3L6Ds6sSlPUhCkczNGscJY7x4VhWOpBzo8nK?= =?us-ascii?Q?4Iak566PPREZNhoAD+RhIzhC6Cfuz5EZMEz5m9BRG2UnMJkasiTo1/quIxo8?= =?us-ascii?Q?zvxC7BdaOPvy8vu8LAa4dw++p3ptTePN4O5900AzSfYpdAFXu6Mobt8Upxl0?= =?us-ascii?Q?uXjDaUYy1rPgwaceEL9V3zIVnaQBPA97i64LbjA56zThP0a9DcMpqLBmrKaK?= =?us-ascii?Q?/n3Z7cARXh+KyaIvMgkyIyvR5lg6MmfBPdYP8kOF9jyuoCECvkmV+nENbWis?= =?us-ascii?Q?lwglZwskFuYZLLbx+qSiUksN9OoEy6m3bNlO8VNsc8z00Ufrr3CiWuskphJb?= =?us-ascii?Q?/7vhleAMl6B2FIlaOR/9tRxtwJEW8zg2DXRLrVL1RND7ASyLOjuVAWkpjUG9?= =?us-ascii?Q?rnAAyuVHEcBF3m0cpk2geU6fecda/R3wWs4uTsqa6y6AFrBRdGo7ItoXjAKv?= =?us-ascii?Q?/DfpBYe90Z1W5EahRfyrFxiNhSE61KUTETFgkmECO23PuSjNQ5tHadvkfTi1?= =?us-ascii?Q?4XMm3lTvrSkxUmpLz9xoanJVg+Vftt3XB23JWlJUMFdwgSK+SzEGEZakVgdM?= =?us-ascii?Q?09Tc4C63zJqPP94i2kTvGMS23UvuWenHLdU0XXxqkfusI0E3e1Er/KTyZ8DE?= =?us-ascii?Q?chpmrBx9UCMUUri8O5UjAklqOBuRvuS9TZW2ozT+wChoqIDcHlesvtfMW5Ue?= =?us-ascii?Q?CpMmR9M1nA8ympXH+TN3WgWB3FOTW9nZtqXuYEPH1bcYiAxZVO5R7wCUDFZp?= =?us-ascii?Q?kHS672hBruPVgu/OFiAl9ysE1VzhNJcJCnwGBh/YTlHxhvIoJAGeN/pViOEX?= =?us-ascii?Q?N1l8Wr1EX/eFbIXXTUa1Z9KqmMuUOt39Cyi/g19AtLeO/7EWEHxQ8QkpabuG?= =?us-ascii?Q?BdCNOY92Sh2x/awHJYkcKvTMUB8TcDFuS/YceRtsC/vYDovMyooYF3lW8wK4?= =?us-ascii?Q?CzLz4VUF9mw9MLkUyqnu8rkGYqqVPjhsbzmMcqbbkjEjRfazt7fE6pfiFwJH?= =?us-ascii?Q?ETEQheJ+DV4VqR+Gl3fFB0Gh/VDaY0Tt4HDxy8FJTs+FfO+ABi6Myzzu8gv0?= =?us-ascii?Q?EgiqvVLM99DKCAcTi93dRgbmlldAdGHmsbYfLq4QKEjeAFW+Kddq43baZruk?= =?us-ascii?Q?cOylmeCYqKnxz4cZ8Zye5n6EbJ8hrbyd9dOUnRGCCbOebn5kcBr6Ky4mbhw1?= =?us-ascii?Q?xm12DRCOdp9Ypl4ZLDiFoIKSCqCx7BYSHOU80DBvFHujyjpoYPluzMWj9BKe?= =?us-ascii?Q?iPGf1dNkUI1sLEQCDbtgHIbXptjzJ/5E6QM85ABG7zZg4/BIqpJXqJT2SoXy?= =?us-ascii?Q?SZGiiDF/pokpQ5H7mMjKgiClDtlJ+aGBm0L4ucycxUyHk7yqzljPCyk1MKoq?= =?us-ascii?Q?5KccjJVU864=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)(366016)(1800799024)(10070799003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?nLMLkuwbh4j9NbL+edhbjRJ7iA6jPaS8hYieXRpE8rqV3BmZbx2tuXjoIMNu?= =?us-ascii?Q?q3jxlkJ7Nj6f22Pg8wxgUPX9Unkgyp4VizhR0YEwau6Tgc++7s+Xa034ljtx?= =?us-ascii?Q?NNQlCJrBJ3XYMpkZy1BfvXFhiEWeJgv7UFm4d8LKpk9QZirFwyIiwjQzfigr?= =?us-ascii?Q?/OYnlGkVmATCdcW7i+ZUsXLlRF4PQclLchZlyaRFw7FTplKqANP95Azd378j?= =?us-ascii?Q?efpIRddmQXuNOPIDuCQ2JrPyROkWcO7ODwwtekan4XXSsLANMQjhinMUwwTt?= =?us-ascii?Q?/27cdtoiZW5n6EFOULJ6hnPNKor6u1WcfmY6vym6u1xhXboIahCbDhuj0H8i?= =?us-ascii?Q?jjfL4WB1aw+mcPkSAgTfV5uSkEoSUjr0IgPmNF/2Aa0RN5J657ZRl79cpFHy?= =?us-ascii?Q?D/tcsYCC4iTs+IVZHCTGQIe96XvfxIfkd2461L1186go0OFYmZiVAhaV69ZD?= =?us-ascii?Q?0JKskNOFU+Rx1Qf1ix1cn8piYziwC2DHgncyozqgxdB6K1HhjSNDnlMRVUrV?= =?us-ascii?Q?4trvv3kgbR8BeFANN933yFNWDM52+QcDhMwOC9GBymoV4ZFtHEmvCgj0Uovr?= =?us-ascii?Q?Boyzr8GMSaAhvdS9nqM7wn/joaiQcBXTgS1kAjqMoeyrxnyVRZ6Ec5VJv30L?= =?us-ascii?Q?dlGvEPRjXIZnfafThtpQpOwEg4M/u9GcE7ybFuLyXpcmbPjVOR2HG2mWuBbs?= =?us-ascii?Q?x9/St8Fuv597Mh05zKzPlmC5Lj2XT3KVJsVBmS6Z74KApQe/7/sqwgm+cmSd?= =?us-ascii?Q?xCq7kHbQK8B1kN78psBKPZ4MiuDg5Nd44pBHlEzXMeXz9+jubseA5mYLfx8v?= =?us-ascii?Q?jW8tLwIh7OZr7crcZwqB1gDhc+FuqTuGHESp2awvGPnGiTsFbKWOoqjWVxHC?= =?us-ascii?Q?Ux1CyPVdzFSrShgdNOFVRtwWX2VJ6NmFFhsfEUCdj1t/4hqKrIBb/RRKsblB?= =?us-ascii?Q?odGIZzHDxDL/Zz+5qQjjdBFfSwMUtZBtXCukk2uUormd/OJQP2lj7vI+NoQH?= =?us-ascii?Q?ZNl/LzCfMwNdKvjLtuLz+3UjAuhKuTyvTwqGCeWkzJKTjk2mXZAwysD1vWnE?= =?us-ascii?Q?uHqzOKrQUNmq5PPgKl/IfasJcAXmfDDgPXFKRhaZZhXfHdwBKMaQIITvbdon?= =?us-ascii?Q?c1npE2/2hagO5vm0Jy9838BXmRzRh2vZajfKku+E/5hU5FYy+ixua1IR8MII?= =?us-ascii?Q?qua+x8oxbEx9QbZ7wL1KBi+M6trmZP7m5XNDQ0fRA40wTBoOyiBdiEyQY03w?= =?us-ascii?Q?k7TTbFmWz3zbe8OaSLrO2lNfCm5NDZrKFjlrIp6qMg9Tlgc0XCpaaFl2SUuX?= =?us-ascii?Q?HoU+3I0i+8FpsHgoG1OWGB+dZqtVaN6IJ29V9/bWIw7h7ghlMm5IZvNnIPJr?= =?us-ascii?Q?rR3/R4ImfsE62wscTTmkLPWfHEyTisHEVc665XSKwn/QYHiVCbvGDC8WRD/v?= =?us-ascii?Q?rfDgClWzf+7Zbd0M74jwSEQEUJmwAGN3gljcObGyXhbVxxXwPJgUYwpzdfo/?= =?us-ascii?Q?itkIqieU8gjaYp/1/1SIl18+RgIFRtfr7rXhjI5Y24t9c0QgoHGnqRkHxxgf?= =?us-ascii?Q?2Rfgk/XnhB5bRN35uJMg7b0rD25/XTi8GyOHNiw4+vK4d/Q1R0BE+MwLSis0?= =?us-ascii?Q?eYiEnypaxR/0epDJ3wPBED4soQmwEAbHZG7PopbLrYXW?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 6a175bc2-8f40-4223-fd7f-08ddea17a2cb X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:39.4742 (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: U6zMGN4icbGB+6w95psQO2FzoXbwt7cB7R03rseLCuXnb2Ip2cVB4qt9CnQ/mzvjCbotanARI4dcsQJtTcBBssgY7xVaN7DrwlWthEPxYXjhghJWIS8MA7i52U3CK7Ru X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEYP281MB5646 Message-ID-Hash: 7SEOPJ6W7LE25NIG5OMSHRIVVNIJ4MOH X-Message-ID-Hash: 7SEOPJ6W7LE25NIG5OMSHRIVVNIJ4MOH 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: 1756814491933124100 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 | 131 ++++++++++++++++++++++++++++++++++++++++++-- src/ch/ch_monitor.c | 17 ++++++ src/ch/ch_monitor.h | 4 ++ 4 files changed, 149 insertions(+), 4 deletions(-) diff --git a/po/POTFILES b/po/POTFILES index dc7293d0cd..50a055fb73 100644 --- a/po/POTFILES +++ b/po/POTFILES @@ -24,6 +24,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..524355b93c 100644 --- a/src/ch/ch_hotplug.c +++ b/src/ch/ch_hotplug.c @@ -18,18 +18,141 @@ =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; +} + +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, - const char *xml G_GNUC_UNUSED, +chDomainAttachDeviceLiveAndUpdateConfig(virDomainObj *vm, + virCHDriver *driver, + const char *xml, unsigned int flags) { + unsigned int parse_flags =3D VIR_DOMAIN_DEF_PARSE_INACTIVE | + VIR_DOMAIN_DEF_PARSE_ABI_UPDATE; + g_autoptr(virDomainDeviceDef) devLive =3D NULL; + g_autoptr(virDomainDef) vmdef =3D NULL; + g_autoptr(virCHDriverConfig) cfg =3D NULL; + g_autoptr(virDomainDeviceDef) devConf =3D NULL; + virCheckFlags(VIR_DOMAIN_AFFECT_LIVE | VIR_DOMAIN_AFFECT_CONFIG, -1); =20 - return -1; + cfg =3D virCHDriverGetConfig(driver); + + if (flags & VIR_DOMAIN_AFFECT_CONFIG) { + virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", + _("Persistent domain state changes are not supporte= d")); + return -1; + } + + if (flags & VIR_DOMAIN_AFFECT_LIVE) { + if (!(devLive =3D virDomainDeviceDefParse(xml, vm->def, + driver->xmlopt, NULL, + parse_flags))) { + return -1; + } + + if (virDomainDeviceValidateAliasForHotplug(vm, devLive, + VIR_DOMAIN_AFFECT_LIVE)= < 0) + return -1; + + if (virDomainDefCompatibleDevice(vm->def, devLive, NULL, + VIR_DOMAIN_DEVICE_ACTION_ATTACH, + true) < 0) { + return -1; + } + + if (chDomainAttachDeviceLive(vm, devLive) < 0) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("Failed to add device")); + return -1; + } + } + + return 0; } diff --git a/src/ch/ch_monitor.c b/src/ch/ch_monitor.c index 5f3e2adbee..8968d84a71 100644 --- a/src/ch/ch_monitor.c +++ b/src/ch/ch_monitor.c @@ -314,6 +314,23 @@ virCHMonitorBuildDisksJson(virJSONValue *content, virD= omainDef *vmdef) return 0; } =20 +int +virCHMonitorAddDisk(virCHMonitor *monitor, + virDomainDiskDef *diskdef) +{ + g_autofree char *payload =3D NULL; + g_autoptr(virJSONValue) disks =3D virJSONValueNewArray(); + g_autoptr(virJSONValue) response =3D NULL; + + if (virCHMonitorBuildDiskJson(disks, diskdef) < 0) { + return -1; + } + + payload =3D virJSONValueToString(virJSONValueArrayGet(disks, 0), false= ); + + return virCHMonitorPut(monitor, URL_VM_ADD_DISK, payload, NULL, NULL); +} + static int virCHMonitorBuildRngJson(virJSONValue *content, virDomainDef *vmdef) { diff --git a/src/ch/ch_monitor.h b/src/ch/ch_monitor.h index ffac9e938e..8338059c7c 100644 --- a/src/ch/ch_monitor.h +++ b/src/ch/ch_monitor.h @@ -40,6 +40,7 @@ #define URL_VM_INFO "vm.info" #define URL_VM_SAVE "vm.snapshot" #define URL_VM_RESTORE "vm.restore" +#define URL_VM_ADD_DISK "vm.add-disk" =20 #define VIRCH_THREAD_NAME_LEN 16 =20 @@ -138,6 +139,9 @@ int virCHMonitorBuildNetJson(virDomainNetDef *netdef, int netindex, char **jsonstr); +int +virCHMonitorAddDisk(virCHMonitor* mon, virDomainDiskDef *diskdef); + int virCHMonitorBuildRestoreJson(virDomainDef *vmdef, const char *from, char **jsonstr); --=20 2.50.1 From nobody Sun Sep 7 23:50:56 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=1756814882; cv=pass; d=zohomail.com; s=zohoarc; b=a2jpsGPv8ejevuyvFwqJtpmJ3swRAyOSPlJ53il/SQD9ysprHMPUZVeM89IP8s4C4S0/iuErKK3QExrza0/68QH82JSK8N3PH+5DO47A29P1aSHz0I6gN+6I/vqLdaJQ7sDapLzZKWJ+zifaTjF04oMWl8ij3PThPP3y61anDvs= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756814882; 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=zr5ulcNNcpQ6mb6D2xc3PNVhUn+tGABivy0gcwx75Mk=; b=LSk97/LeXb3xNAMP2BjsuLFVZsgMdG4iMzOULdXVM9BgEVUMbCNCo7R5wxB6op2sXyPTM0zWsU055d+FvLMGElBIMram2n0eb8wdS569LKjv3UkAudOIeR69URCtRjY68GjTLOtwkrfCR5iGIy5DzfgOtRFFg6iVne4PKZ3ptfY= 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 1756814882111378.526288425168; Tue, 2 Sep 2025 05:08:02 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 98BDC4430C; Tue, 2 Sep 2025 08:08:01 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 5B6D24450C; Tue, 2 Sep 2025 07:56:50 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id AAFFC44111; Tue, 2 Sep 2025 07:55:46 -0400 (EDT) Received: from FR6P281CU001.outbound.protection.outlook.com (mail-germanywestcentralazon11020117.outbound.protection.outlook.com [52.101.171.117]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (3072 bits)) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 1B2D74410B for ; Tue, 2 Sep 2025 07:55:46 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by FR5P281MB5644.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1ae::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:40 +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.9073.026; Tue, 2 Sep 2025 11:55:40 +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=ZCqz2FNM+iFq2LzVyuwopH9/7K9oieWFJe6VsWrOOLpP48tO4OkJKkmWtPiXVXxr0BBE7Is++8dcvJ76HkdeHiyqwJ8M83/lp8erUC0piLMJBKwuO8Dr7IT0SSGd1sAStTYkeGF+H5Emr4DvOICt347Huh0GjolSSIxRb3LNycEUocnepbfDW/whbB+pmUtKx1ClMNhegRsWHTTNTV2Jb+t9XxC+hjGFt23lnyA+loUVzyeLHvsv/0Zva1KR0VAf0l20m0QZ7ZvxDkTeRYyHpxBxUmP47uwSeFU/SyZsbUO8obSUDoNb3d4cgRhDJOu9BN5Ty0b8Zy9v4jXBMZ5z3Q== 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=zr5ulcNNcpQ6mb6D2xc3PNVhUn+tGABivy0gcwx75Mk=; b=D/lRiwRS6vv/whtv8I9xyotZRJnVl8q8lePCNHTTt7SpRFxpL7fS/cmJifXMls9LSTciO6zGW2Igwrpok1DwbWDd5xBqqGCXmKvjjUWzx2p5QSpYsx/noeH9yCX3hPM0TABSIZbgZzsFSrH38yxUhs7F4zRVlluxUPozPXZtwWU+2sdir0acdnL2LVszU3UzNChF/fwRYH49zvrnjocOoQ7+LOUZ1GvJ61cs25eb8yUcBHGORfnbsuMqzdz0/d+OSwkoQW6Cf1FFSLafRQaCB2IIAHl4yZ3FtNBU4jkdp5KRmZ9wanUkwjptxQinpQfiEnQurGeNLmW4RoYvuutNMw== 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=zr5ulcNNcpQ6mb6D2xc3PNVhUn+tGABivy0gcwx75Mk=; b=Flxf/ubFQpLlpUVeyWdk5rRjodBQz2mtIUj1sY12J7+oAnabHhrn/rqN+HEDNp2uULPnVhW2Ub6xIJ9eqirafYiRepuSUlnxjVtporg33kV09mVS7N7Y5hAdSHesMTiEZO+Cmvbgaof3Guo6Sc7TAiLABFV2BLTl8Zta8wI8dPD195PsuE1m/R4h26gxRZQiA325h+5xfcZys6pzqRuOHkhiaMFk6jxaRVls25uUupQpUSkaASRQIhCKRYMyyDsxH7KTliGgbS21Omb4Ahs72OwTZSehHc3/td01kskA+xVAL27vWzDa1f7QZgNqiWEpQgh2iLa0YcaP8IdKyjziYg== 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 v2 10/13] ch: assign aliases in ProcessPrepareDomain Date: Tue, 2 Sep 2025 13:55:25 +0200 Message-ID: <20250902115528.557133-11-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|FR5P281MB5644:EE_ X-MS-Office365-Filtering-Correlation-Id: 46574eba-84b1-4843-bb66-08ddea17a310 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|10070799003|376014|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?cX5D860T2Ysr30qQOe4e9qhTrAmtUpw0D+7iymz0lkfiwJI60hM4MixmTSsY?= =?us-ascii?Q?RX/YAJAsysvWBnUiknL1OioleiBKZ+R6WUA+gfPc0a6wUBkc9jJxlW4dCdaz?= =?us-ascii?Q?mwDxDGU4ZqeTbFMWhVTvv5rrZIWtNYdl1aeoFgePYQuFVlxmJKdbDwmJAur3?= =?us-ascii?Q?MuUemuBN+LU+hTYMCPqwnEc4DmVtif+9bepRSNOxLBmjfz6XyNWeFe+BHHDf?= =?us-ascii?Q?7HfDyL5hjWvv7+Adb+TMyMnRwRvq8Q5FpmZbPmTS3xfbi1xZQ7kFnG5JHs8C?= =?us-ascii?Q?KFgt7GTVu2KCrq4XkqEi65vzpoOj0WJ68M57DdyeLXbSKMSyWzcn2tGVmoSA?= =?us-ascii?Q?9ZZGRwTiBLUFkJN40BSAPO8Kb2j73lel1TV/E2wN6OYf6wzjH0OcH0rpIg8M?= =?us-ascii?Q?3e1DCfaH1/0K5as0Ja3RRmIxBNgIkgxklh42JdttYcz4DKojVAJ3q8FIMYzZ?= =?us-ascii?Q?J0UhaTfoqE/MPdoy0M1FU/VqAZMrzt6d3Wl9vU2o947gwxHKhIicx2h4tjdf?= =?us-ascii?Q?BploXCcUmaMmA0nx8rEL8JExcRl4QZKaEb8/4A2j3b/68X/V7/a/H3cKwQom?= =?us-ascii?Q?PWymhsGcRESHi/9ac2OzGe6CeenQuNNAFUrG7W/sOJszmkzby5VGN6TxQ8PA?= =?us-ascii?Q?n4KzMVM8K/Dv9H3LdS/ceLWK19SCey4j0NsdAx4TNCyBMWmy91Sg6yx1diBR?= =?us-ascii?Q?jqUnKrLYUQyK5ll1ziBMFBdVUpGjyOf30tOss4UcK6NnRB3Ck1Btha1MUj02?= =?us-ascii?Q?3r0IyEJZxH1YI/Fy4SLLTd2O2f4+ohVywT2ytaoLS+NrfkpDTlwbV8cihoN6?= =?us-ascii?Q?6e1WVBlZG3gPh/Qwci11zjLrKnLNPoCRTl/3Z5JAPeX4Qy4AScuupZ0X/Gt7?= =?us-ascii?Q?YF1I/riYLye7LCeHbmR5XSZS9Bj1yow6VQxRabSNQx7FNvauXetFB9dSKBeT?= =?us-ascii?Q?/Kt8tshdDJ2kjLODgqyIjPZQOg1bwU0N8FRIU0jok+PLoWEJD2B9mtoAxyaq?= =?us-ascii?Q?pKjNMe8baZBQMgaYRtuUrx56Hr9prw5TQ/Tb3Kl61PQx2uFj0ukcDm0FVCj2?= =?us-ascii?Q?OCLxZsnATf8O1k1wsVmdj4LyGWknKDVu/l3FBrO31Up7yue1gk9VAMLPOKY9?= =?us-ascii?Q?lobhgP9rN1ar//gi+6j7rLvGjmjZfPeqRsviRC5AoqILo4Gebc6fmFAlds3J?= =?us-ascii?Q?RVdBKiwywj+bhiic2sDD7PDJ17EWj32DxHVRDyG5JTAcne+L+npu12V5wosI?= =?us-ascii?Q?pWYj/m1s7ehA2t8mKZzvQXK1dZBg2oOg+DjXVf+Z9DLmDi2+DHmi6yubE0jA?= =?us-ascii?Q?05WXoHAVlkp1nGubCKUl8vp93qgzYTAm5iWe4sP8akTm/x/d0jHhUTu7Z0eC?= =?us-ascii?Q?cLwE1/F+HrsCflfCV5wajMEDqx/nqwlV8jN+35AGFeZmsNagAj/HGyIJkBYa?= =?us-ascii?Q?zb74yLQd9F4=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)(1800799024)(10070799003)(376014)(366016);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?G9Z9u1sbb6DIW6FQNHxEymypyYWjx+bk+mZSyzrWcwu6GEpoyV5I7UWZlyiw?= =?us-ascii?Q?zfTHjP+N5PqqIF2hGuHnl8Cm7AguXNuTpn3g7a509xGOMAvlfn2kXX8d1w81?= =?us-ascii?Q?I3pBMumBUIdDzn9Lj+ToeHT8txKDFwS8vTeqOYYk7iZU3C4dyVS7xWxo2+hh?= =?us-ascii?Q?qc0MO+cyAtF+3CTw+BKohwuLkacaGCN+GD2iwV/HK+Z3Og8U5dNw7sjcFZNI?= =?us-ascii?Q?wzLYAoEcc5fGUY5I6/vmVMr1nt5hEI1mQsBtjO0rTkrDLf5YUOsP4puZnXkE?= =?us-ascii?Q?S0odIu3XJt15zOB2YwlAmoFv0lEWPCxjcB4ojudT33VjXBCbUqo8iNjqzVpP?= =?us-ascii?Q?RC0xfrvQrvbiQQrUWKk5vsLX2tLF4zChkc44UsOB2IsBWyg6k9pSmOKRQ5vQ?= =?us-ascii?Q?YFdFWfnjXD/QpmEhtKCwdqSJmvmmNE5ew1I2+dKn1nUwHkF61zyd93yKkgNn?= =?us-ascii?Q?PnPzBs/uueG9UAVOfHQeFyYqPlVlX0etfs+2BdOOifhrEh4vsYx60WC3Ivp7?= =?us-ascii?Q?bOopiI7zWQdZXj8Hq27h8/5cnZ2QwCv5FCWsETMMt5+iRDsguzg9+VvMlZfH?= =?us-ascii?Q?pw4pA6RgISER/z+bZhzqmaL9KY3vh8SimtqIAS23MVDNjZH2gtHePAd9nDgc?= =?us-ascii?Q?0A5U+tn6BimXiGbzPqPurUULfsTKXTGSm4COOhNb1Rmkb7//djn9FjSw0NAH?= =?us-ascii?Q?/0T9jG5UKbwTylt5cOLNsdzw9OCmmoMVBSp0t3DDlRUbgoZQRmSDO+E92NLo?= =?us-ascii?Q?7hebzmy/dvJ9AAkZUJ6tdUTFaL/FSZG8Lk+Oix0yvMLpWNugWHHIH0fUqhX2?= =?us-ascii?Q?vHvrlXUyojCwce8dAJrqdZYavLrNAJXyhbH5NV2Qc6YP8DyUZKCz5fqlQrtt?= =?us-ascii?Q?6Pf9ZG21gFHGRWKtFAfzRZ5FhruZqJQgJuA/Tq2W8+SUUX6hEgT8IdSK7SlN?= =?us-ascii?Q?zcXfGW4cCYv1cmjjHSUMDN0gdk8NyZTFFEcXWC8ywmEeewBypTozkV5Pzhos?= =?us-ascii?Q?+r2sMs3aWgXiw0lgrM+whLQAXJ7hl0jGK1QJSo5+xm0Wjtxw4+hAw0PzhgYt?= =?us-ascii?Q?WNRkRYrgO9ger6i9TxRrj4NKeaY/TbJnLs95h5EZBVFbOBClGK10QILFyIGP?= =?us-ascii?Q?DL3YzoXUXDxdncfOtcQr0LuzBRtIRGYL5te00xb68rCcN+4QepN+gljb4smr?= =?us-ascii?Q?9rWHg5jmRtKwQ3yXH7txKTTsh0Z9fqsk7D7IkFlZ7G5lTJ/ythhap0K2T8cw?= =?us-ascii?Q?qazrQQtIAVtY8YmbSsepwhqIHEQLGCEvkIXDEFsRPvFmVJXoQFZEqHuYpefW?= =?us-ascii?Q?jaEXPgabg3WnUkDcnFIJs6ECwMAoF7J94mgHLZI9GXmpwFULRVD3Anuzp93Q?= =?us-ascii?Q?csxKjkhfo2RaEmKagrGivO8GG9locTl6poIZjABEX/8h/g+tQRtnnJgmqUTU?= =?us-ascii?Q?33ivlaRvq3nwa5K4RyOrh1Td2Il6SbZrRV3labBRYHGGGgbzmMEGHBBIZK8h?= =?us-ascii?Q?HYjC/VHBIdfp2KLl4F9WXjd3HZpUmKWKUYinMMPx2dV6vbONSJvSXUiMAMuk?= =?us-ascii?Q?oaDB/KWFR9js5sNnqvRg2ekaYGITKP2KCrSOrJ8dXjLTtLmw7m9N0t4Wv9ne?= =?us-ascii?Q?lUK8U5SYatWLqTJYtNwRuWVs7DSYb88AvADAB0twIHJs?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 46574eba-84b1-4843-bb66-08ddea17a310 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:40.0339 (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: 7hv7y/EraB19ektHTmlJ8A8yLiQ1uuI5JmEim0l4/G0VNYBR94ndMbERt3/jMMdBEaypfi19bdUdqbhqj0Psc1q2gYI75N43ZXMEVvCCLYmHvzSRPOwcsmYjMaalngIz X-MS-Exchange-Transport-CrossTenantHeadersStamped: FR5P281MB5644 Message-ID-Hash: GV2RDHRF2AW7VN76OIIRH3VWDKZ5YTYI X-Message-ID-Hash: GV2RDHRF2AW7VN76OIIRH3VWDKZ5YTYI 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: 1756814884558124100 Content-Type: text/plain; charset="utf-8" This is required to have unique device aliases for devices throughout the domain lifecycle. On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- src/ch/ch_process.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/ch/ch_process.c b/src/ch/ch_process.c index cd2e88af1e..550bfefae1 100644 --- a/src/ch/ch_process.c +++ b/src/ch/ch_process.c @@ -24,6 +24,7 @@ #include #include =20 +#include "ch_alias.h" #include "ch_domain.h" #include "ch_monitor.h" #include "ch_process.h" @@ -889,6 +890,9 @@ virCHProcessPrepareDomain(virDomainObj *vm) if (virCHProcessPrepareDomainHostdevs(vm) < 0) return -1; =20 + if (chAssignDeviceAliases(vm->def) < 0) + return -1; + return 0; } =20 --=20 2.50.1 From nobody Sun Sep 7 23:50:56 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=1756815059; cv=pass; d=zohomail.com; s=zohoarc; b=GKIesFRDyZq511g+Y4KL3kUke01XgOi+MthSY3bUIKzeILhQGwKZWEpsjDRMGMQMsZpkeeTMn+TdxJFea2CG2nMYMt00aGeFF9fgg2UusPB6tHGXZU+fk79XFajFiv/W5pvlYn5LLNoHCp+T9Udfa93lPExqDagfiHOwYJIwPmw= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756815059; 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=PpDiqMRsYLeAm5HSzVNUDTPGWfFmfKH75tW2A8MepB8=; b=IhrCjSuR4M5h81opdhSZuM2AtnUGKtTrvjp7Qfzi4I4PToD5Yl7rPH8bP0ssBkaqubOOuLIZIYuVrPPgHiBnJIFnefYqN/JdR9OXUTYnECIE7RmdXENOtHDqUX4yAUbimfczghrY347jr6UGa0HfldD78bWqY42jZ6t0lY5oKmg= 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 1756815059324112.92331932813931; Tue, 2 Sep 2025 05:10:59 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 6974D43FBD; Tue, 2 Sep 2025 08:10:58 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 5936A445C7; Tue, 2 Sep 2025 07:57:01 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 6D5C44419B; Tue, 2 Sep 2025 07:55:56 -0400 (EDT) Received: from FR4P281CU032.outbound.protection.outlook.com (mail-germanywestcentralazon11022111.outbound.protection.outlook.com [40.107.149.111]) (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 1372F4414B for ; Tue, 2 Sep 2025 07:55:48 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by FR5P281MB5644.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1ae::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:40 +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.9073.026; Tue, 2 Sep 2025 11:55:40 +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=NNuFdiLWlEpgi/Y9Zpp+anKWzPydQWk3l34aU7P+jzldpQ/bAnxbeKwukKg2S5P+94yKNw22nKhCG0CFwRiH2N+YlqreO1qrnHGZvNBC55DtZgXafBSkGsBMdGkBe3uAMg/5ULKV1+OklsF2OXP8l0u6yRre0eiNvf7i+34q8v63IMZqBdTr4BqtvKaUPl7YkyfjqCVLSUFgSZhISRfbVielRN5c/Q8bodrRPLr1f2S3x2hmd/vmq3mRPolZ+8bONHkTaqOgK467iysxLHGgescTqnY0FXDc50KRJWDYzTf4nHpfvErtwTpjb8uApF8Zvz8DsJDC/zYYdWTZtjDuPw== 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=PpDiqMRsYLeAm5HSzVNUDTPGWfFmfKH75tW2A8MepB8=; b=POSMP71ohpkbC4DLyblr9+sWKk8xjB7uChuraW+lRA+einMlhyAFs18dmVDZ5htZ7CEThGyTXcvC6IhQLTM2T9uepcJ1WJ4COUXERUAkSPnABSLB8vAlbpINPAjzyW6kmOyeNyGSlMRqNyiJGGnu9rUrayPdvaXRJonhQsPhcXr0Kh043YzWZGmfsI3LEQJ685yBiVFD2H62LUj5jjBy/9loGImBdPNV0B8aVNZATdtYtlNHjfvztLXWClaRb5nJXpRC/bEq/llapC7hElcI3/S1Rv2a5dztNBgGlXLwPFa2yK8KaO/6io/z6wcOUQvwn+eU6EjCQMX6PeFC11Sd7g== 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=PpDiqMRsYLeAm5HSzVNUDTPGWfFmfKH75tW2A8MepB8=; b=UQgl9Bz7MfsOMjw/britnIgqhssMWfnxv7PcvYEOccvy005VpuGWbvxMyMBrfFlgoGw9hEHWZdv5uJfNR2dYg1Z/4bXklnELJgVgvrETIy3Rv50/k0iMj62UGDhR2K0jz7IbbcDUB1Ab5fHSG9jxn3l6SuChl6swQl/xHPtcx7htVSUb+FdrnmU2+ZkwcLqzaYj5H0FeY946Vnas9lh4F41CxT5auv4vmVu1Issyr2YL5VxqW264N9wjXpaKZXxDOQucbKnSP8IjTGpU3W0ZEt5drtjI39n9vXpWXLC31a+Osas5X/YViMpRoD4W3yaFT9OMxSxgMwTxGvzQAmfg2w== 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 v2 11/13] ch: Add virCHMonitorRemoveDevice function Date: Tue, 2 Sep 2025 13:55:26 +0200 Message-ID: <20250902115528.557133-12-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|FR5P281MB5644:EE_ X-MS-Office365-Filtering-Correlation-Id: 453f6862-8299-4297-003c-08ddea17a36a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|10070799003|376014|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?ie53PnSZzQ7Hv1G8KLnPz5o8fcPoxkTe1xjFSu6nJUN3WTze0lFr89rwEJW2?= =?us-ascii?Q?6MZULb4h/zSGHgqHrEDRyP0L6cYYau9MiyDjbFBnBMoGZEbV4svWN4dMo4mA?= =?us-ascii?Q?9nHvqKtSas8RlgSLmHut5msrx60+fP5Len1SzL0PRHYt6l4VhyUbaLja7sAl?= =?us-ascii?Q?7ipr3T5FS3u9IIkO9X+ZK6q5ZHG2w6irqoh7IrxVsO+ISBihZXbraLkQPduL?= =?us-ascii?Q?xGBpp5REwjDe+jku6hhlTzn2KZZ0eDXKJ3jl2aRihRThQf2+ngXoPMPPsCJe?= =?us-ascii?Q?5I7rw0v15IE54U0CYyAXeDZetm2NGHsBXepoaVZyfokVNCjZm/nNb/vyrE0C?= =?us-ascii?Q?UK+y6kRBhXITLr0TQMc6xiLHoQJY82CpS0egcfGzTwJZ9gbntzfnix77Gj/J?= =?us-ascii?Q?b8rkO7U7LzWR3D1OvKyazmPhdm69XoLYAZvZBmoYx8bqxIE4xckahjmJ6ASO?= =?us-ascii?Q?6+YXSEysS8xdeLF6xdtPqCnPmzcIySugGtQkIRT0Wu9QZFQJkjN5MNNvatPt?= =?us-ascii?Q?x+bi4SJMBdF6C2lY122PtsJoUaYShSVasN4QhaBPsO4TPOVwSVGPo3Me5dEs?= =?us-ascii?Q?zCuB3URXJ2oAMYno0TbUQ9pgxJBRphpq8CqsfIIeOsSroTOM4AYq8XJK+kWk?= =?us-ascii?Q?NPuAbnPUaxQ5XebY7/fz8ny0ujpYygf3OUn8yEFr0uy2UfUquL1p9W3WRap8?= =?us-ascii?Q?VRM2uxU5gSu5XBKY0Egxhta2NoVlsB5/NjYP0P9FELXAB9fGG7mV1WyX5thw?= =?us-ascii?Q?sJMtevV9tslU8RhB+zvmyvfaIfDAZtNgbWwYq18R4O6Th5G40fdO8qZg73Pl?= =?us-ascii?Q?/yc95Kbpoe+9dMDJAl04KRcyzzwzD0RA/5GOISAwS26h8qkUd9RavAQOYrZG?= =?us-ascii?Q?meSRq2MQWYL6hkoPBHwBZo2ekUDZmfYYXqnXupOxI5FypIjdMR2/Tl1GIfjO?= =?us-ascii?Q?1kKNz//34xRZUNP5tGZzzJUPoRfICNu/7ehTKqZiQkcbbvoAZNtFL2Vi7zWZ?= =?us-ascii?Q?1/H7zQAdoic7+OEcarOHRSVLb3c+ygAtKHB9/FT2D7t8IKIHCGV9zpCPGvDP?= =?us-ascii?Q?mpgoOYoBlIYRud4zgUGkHyrT/ckHzzuOswt29JFi6v0T0DwKeVnvIoI0Elfb?= =?us-ascii?Q?X2egWmcLYWzBDLgXabb5mO8pl+GTjtVOGDKf1SjVXppd6iiIzyl+kqlOYD2G?= =?us-ascii?Q?TaffVRTONL8vomOeaL7quzS9SImekU/FiTnDQMt+iFX2ZJOlFOQPh0BpTz/o?= =?us-ascii?Q?aK5HX31B8be/+vv150ydKw2exXPQV7YEU42+gYBJ6uPCzFMe1HdAnhv+6i3R?= =?us-ascii?Q?c3WdQX2IiWcIviAjfTAW0O92aeqFkMCwKlXC0QiqTleFt/n/Du8L0MVCynxZ?= =?us-ascii?Q?t906KItpKir9DHdPW7bTI3/fQNsOp/kTVzZx/XmeEiTRV8Ig40SS0GarVkhI?= =?us-ascii?Q?IlJUWomnofQ=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)(1800799024)(10070799003)(376014)(366016);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?iuogHp7WxZqkZuI03FOUl93qZ0vDFSRdmatLnH637zLTX9Z31cuX0Aim29/z?= =?us-ascii?Q?9130EqWf4TG0+EAmfkFj0pmEUgMKRqqgKyJsW5ZyqnCDMJk/5NfxOnxKXHHX?= =?us-ascii?Q?yZiXVtzSSsOkc8mVNMlyk4prsb5DluTr4GtR/0HKgJ5P/3VOwd5Lsru5XsqX?= =?us-ascii?Q?KdQF9Vq/7uzaqD6jEdqq+6JWJjccVrDs1s4S6qTiqSRJkDbtSf6ok2DHzR6c?= =?us-ascii?Q?+Movw7WKjxTaavsRuPwmnVzwUlkbFc2q+INO8Klv1s/RvroPQkIhMnVw+jyw?= =?us-ascii?Q?0aG715GUaHu6b801vgltjQlMU9Zu2Gz81uRptwuQGOHtSGO2Pfcr6/mJlCLU?= =?us-ascii?Q?079LlWQse/UMl3NZF2MblKZAxt2gD2kArldvGvkbMXj6aBI/sYaJX59KlHMG?= =?us-ascii?Q?fjpBofchYG4vRrQGq4nhpW4ZXnOilpXVViHcMZakeVPRixEQCp9cCE8xb+XP?= =?us-ascii?Q?5VD8a1PEsH4GK9oyzq9fbpVRQAsVJHuSpCxksJtYHZdcMIWV0XuQUMCNWDYu?= =?us-ascii?Q?2m/kiTBzHgYzvuaZ1JXJHQwJw6UoBWmc2FO3KFxDqM4xWZlQ5fjkbndCTxpD?= =?us-ascii?Q?rLKyt9KOpqhiZwhS1mdKr6XA7uCkAJwONZUyKFsGn/MKIy8wwI9NJlSnWZrq?= =?us-ascii?Q?v55/oDMTdmf1gCLaUr3y/ZoBSzbgVoSDJjbevG0pxYhdGYUedxql1ufA3nqw?= =?us-ascii?Q?HgR4s1fD6xC8i87+uNWdJiLqYFDZ6C39yjLvhLjz7nxEMTGea26nk+N1pwWp?= =?us-ascii?Q?qhsp9lwbBspmY3Hz1SHWoA1psvDQk6Lnz9hJ5ANz/FdIG0Ls+kx8PaIsxRZJ?= =?us-ascii?Q?Cy5rbulimDAR7ESTKhVn9KdYT0N6W7wE0peup01FiKI/07/TtthfEne3VhVW?= =?us-ascii?Q?5BWZxdUEZXYBGZxDo3tsGfNSwlXWflCPY7JCOU5yV9htI04973EEuZNtoKwb?= =?us-ascii?Q?RlnN3y+FcsJRvzTnKRmo4pUrgtEB0HDe7COlV5U2do9WpJL8kTS8UP6ScXjC?= =?us-ascii?Q?Ty2KQruwBNU3nLyUXLUhip1IRk3CcNnTEexs45U3UdfZkVABNd9votwkWrhP?= =?us-ascii?Q?gABZRUB/zjk1n8Igbt98vPVnEWtTVinUopYuMz4WIi0lzHeGWXRnDVTA5qEx?= =?us-ascii?Q?O5m7dEzlo3BTzWP40qaQhF4IRJaS1MV9NP5Pms+Q4K2ppRT+Jso316aA01jq?= =?us-ascii?Q?qbUrAykJTj7Z/xjXF199NDc7iZzBlvAhBY3DPJo8uyAN7Js1Ev/umhIeGx8h?= =?us-ascii?Q?GC4uce7YfmPvk6W/sDX8SGxbnHkORu35D4xfCQ9CxdM0poPzAr8IqKvDeEzc?= =?us-ascii?Q?416WrJXvf2jTf3pkvBnFLN1p+aCmEY29gLpBgyqoAwlFYkgDAaYHufjujN//?= =?us-ascii?Q?BkRr4xOTrv6LzbmKQWLxyOUBr0IRBWXNLjIEUHh2rUyl5YEA1UDK5kq1Rpxj?= =?us-ascii?Q?okJZ2pvzBUfUKRTPtdREkNOtuyADGEUwVrCL2ynifH4vtZ8kZkYfq90THrw0?= =?us-ascii?Q?FUn+TCHYuL5M7a2ljB67LfGuwVI8pnP4s6qyn8h4/cNM0O87Qx71qi2VuU42?= =?us-ascii?Q?nf2lds11ypLJu24PViCVZpXIn4GfyIiwU6b4htp4x7ypJpc4/WLPuiDkosDn?= =?us-ascii?Q?KgdBVCati16pZbK3cDkzwYruKZEI1WOm5qwdtTvCxwhJ?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 453f6862-8299-4297-003c-08ddea17a36a X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:40.5068 (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: JPDTacQ4RGqVLLq3f8vdUOXPnn3kiJ/Wm2ofFkSZzGEZRrfuvuqSlyTD0T04iRnKJ46SETOCU6Adbm+2TRXs+4EQKAiW7hBG3ojm3cicWjTZDo3qRvA+PcYHv/anTfPX X-MS-Exchange-Transport-CrossTenantHeadersStamped: FR5P281MB5644 Message-ID-Hash: OB3LNXANNL7HPJ7MRMGLF5CPV4VY4WQV X-Message-ID-Hash: OB3LNXANNL7HPJ7MRMGLF5CPV4VY4WQV 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: 1756815061316116600 Content-Type: text/plain; charset="utf-8" The function calls the respective CH API to remove a device of any type from a VM. On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- src/ch/ch_monitor.c | 13 +++++++++++++ src/ch/ch_monitor.h | 3 +++ 2 files changed, 16 insertions(+) diff --git a/src/ch/ch_monitor.c b/src/ch/ch_monitor.c index 8968d84a71..ee629f61fb 100644 --- a/src/ch/ch_monitor.c +++ b/src/ch/ch_monitor.c @@ -596,6 +596,19 @@ virCHMonitorBuildKeyValueStringJson(char **jsonstr, return 0; } =20 +int virCHMonitorRemoveDevice(virCHMonitor *mon, + const char* device_id) +{ + g_autofree char *payload =3D NULL; + + if (virCHMonitorBuildKeyValueStringJson(&payload, "id", device_id) != =3D 0) + return -1; + + VIR_DEBUG("Remove device %s", device_id); + + return virCHMonitorPut(mon, URL_VM_REMOVE_DEVICE, payload, NULL, NULL); +} + static int chMonitorCreateSocket(const char *socket_path) { diff --git a/src/ch/ch_monitor.h b/src/ch/ch_monitor.h index 8338059c7c..e8fa393e54 100644 --- a/src/ch/ch_monitor.h +++ b/src/ch/ch_monitor.h @@ -41,6 +41,7 @@ #define URL_VM_SAVE "vm.snapshot" #define URL_VM_RESTORE "vm.restore" #define URL_VM_ADD_DISK "vm.add-disk" +#define URL_VM_REMOVE_DEVICE "vm.remove-device" =20 #define VIRCH_THREAD_NAME_LEN 16 =20 @@ -141,6 +142,8 @@ virCHMonitorBuildNetJson(virDomainNetDef *netdef, char **jsonstr); int virCHMonitorAddDisk(virCHMonitor* mon, virDomainDiskDef *diskdef); +int virCHMonitorRemoveDevice(virCHMonitor *mon, + const char* device_id); =20 int virCHMonitorBuildRestoreJson(virDomainDef *vmdef, const char *from, --=20 2.50.1 From nobody Sun Sep 7 23:50:56 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=1756814944; cv=pass; d=zohomail.com; s=zohoarc; b=ghEr5u+W335VS/UACwuOBib/3UcDGoYYp1XZVmUT6f8zShAxmMlL7yT8lsww9wPxRT6uG8S9wSybYzYBHFS5RwUazSwTMiaepwtvwKotjeXMoUHrPMxtbOOKX0yytb+Ix8/oRdX3jvR+LhHRrziJMJdu2a/7JYdIifXosskmq40= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756814944; 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=6HB8txqsOKX4ixVQ+Uib69QYKH1x5yec+bGSgsZ4fv0=; b=bowz2WvQKkwmM8v8H4bhGv8btO0OkM/e/GC2rpdUdgd1O8QUkMg2kfUWL4SiGwjETpI58YmY7BEvR4JL+44llZRwaHpzH6RmgCHE27nOvit+QAx1eBA00tqpPXVTpyXoWvf4hwBgAMl7yF2zEhG7RGL3zMsdybVD1Vsza+Zjcvk= 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 1756814944436899.4807409235336; Tue, 2 Sep 2025 05:09:04 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id DA02944218; Tue, 2 Sep 2025 08:09:03 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 9999244547; Tue, 2 Sep 2025 07:56:53 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 78DCC4411C; Tue, 2 Sep 2025 07:55:55 -0400 (EDT) Received: from FR4P281CU032.outbound.protection.outlook.com (mail-germanywestcentralazon11022111.outbound.protection.outlook.com [40.107.149.111]) (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 A06874411E for ; Tue, 2 Sep 2025 07:55:47 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by FR5P281MB5644.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1ae::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:41 +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.9073.026; Tue, 2 Sep 2025 11:55:41 +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=D4keBdEIyUwlweU0NiOrDmoRRrvbT5q8Qd3/46iJzuKV10pw52ifOvB/yYFN5/tJfoEcHwoPjIExnT3hSswvGVI8TfVnIB5lXLYraDCgkP+akjYZBEkU53x0KU8yqDMjr5PeLXD0Oejvm2NNWeZ/JPSrAFblPdUWQxHtrNn6ZhxdQb7wu51NqbFaBZKHHmXJStr1sJaygtyHQJSLqBcz5GWFL3uZCnsbotVO9BtHeOprQgAvzA1aeGNEo04efFa15le6/vwX++rIvopp5QqffPGpUW/tpCkqA77e6FjucpyOdwVXZ6I+Q+uvTFm1aGslKcsMqzhGX8ors0WkXqauyg== 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=6HB8txqsOKX4ixVQ+Uib69QYKH1x5yec+bGSgsZ4fv0=; b=dep54kAFHeJxzooTOD6rSpO9iJ59wknGasS86nwu3nHq7GoTbfrCV67ynh4UPrudv194ZqFGSUhr+/+niCZxo8pPH6N49xXnEWx3ZNnLWtkJI8XgIpc10ogNEXwqWedu5g/fkljaUpSuy/j8Wu7szknFS5hAlyK3vIY8+gwL7e2W4DdjbwvU7DfRddpgHH+li0lljRhPctkQmpG4H2cYUSIK83bgRSsx96m3RQT3dRg9Bf8/NHz9ZL8JJ6ipTWuwMINrQr5mNuzNMYft6RPN/ytyUVOHt9zQ2fzz5KYaqiuVV79cJEioZ4/ldIgd66QQqCMaJD847NIxb3IH58kwEA== 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=6HB8txqsOKX4ixVQ+Uib69QYKH1x5yec+bGSgsZ4fv0=; b=AYMC0AjRZyxovFuo7maMNeKYcEXaOmjySoVtdUEIf84EuWNISErLiy1Me8k7JDFzpG8KI5qXBsNNfL1eKb5Pxj3fjoDwNvUUbY8muPPTJXTGdUXJtE7M+v9MUAmbbiagmefT4aI7VkCjBalHtmMBjtNXQ0sXwc5LOo+52UThchL+M/6F9iIZhddsxPzmDmMpYzX9FFvzdQqYTIoKDNg+H7ZBMTXe9U2YAKN0c4r/Q/3X7WbRZY2k3v7zPy6nlcVz7cdBNn/6mfe394t/UQUYUDlDI5oUPbkCrW9opD2ipARoVdfBKIKHfc676MdIQINteVs7ongN5OWDr7c/wMrC+A== 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 v2 12/13] ch: implement disk device hot removal Date: Tue, 2 Sep 2025 13:55:27 +0200 Message-ID: <20250902115528.557133-13-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|FR5P281MB5644:EE_ X-MS-Office365-Filtering-Correlation-Id: 93d24bd6-add2-4083-e67e-08ddea17a3ba X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|10070799003|376014|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?TTmnMSUWox9p4VvF1Qg7knXhJmzqu61udDgnK0p0ZzD92aWX0G7BXfNNnSg7?= =?us-ascii?Q?6epKolgyZH5mVjSLi6WjlsPp/2gwUHZks61deEhAxgp249w+nxsES7nj0a/C?= =?us-ascii?Q?/H7uOMAZFIyCVRTQ11b3oLRPgAtSUyu8JE/NZONBBTBsDPjFXgpYBdpsZnBS?= =?us-ascii?Q?c/GxrbNC7Jd+8qB0bEGQjmBVPCFagA9QXPcxueiU4KjyJtZfzWvv5lX2zd/1?= =?us-ascii?Q?GBBq8kDsGBNpBbrRgqFsNq8fr/Mn70fqCPB9th+MnCtUGqsWp2ITNOgN0WpQ?= =?us-ascii?Q?/hC2XkpEcBHO3/9uF6MykKaykPCqLtoRZi8rVfN6mNPr0Pu96l/VBaM546Om?= =?us-ascii?Q?+P9+RjT2VmuFkZhcbz2/G2mRgw/37YIqSFSLXUlutjm6SqMKFxIG/1Z7Uji8?= =?us-ascii?Q?uXn6Gt3QyEcABoFR1PZsOZPs/Gyqoz1I4Cs8zRQFds75Hh0t1o12VtR8cniv?= =?us-ascii?Q?5H8TE/wlPl6GNMbcognjFDe8KD0IxuIt8lYo9Ku9BzWFqbVc+BDW+hfcK9Ws?= =?us-ascii?Q?FFJm71IqCa+h37SVgfFuoWec+MYfLgx31wgKyi0FSAgNC/Er51vUZ72Rlt4r?= =?us-ascii?Q?S4tuSR9QlHC5AGnBu7qyYQvkZDPQhJc75hKeZO8zr/4N/d8SwLKXu0rF9L0e?= =?us-ascii?Q?xsSfK/CL7oIoRLyQ7iO1dvV5279g7sJTGosDzmdnoXBLOvoEbSo5Gkto0dr/?= =?us-ascii?Q?ySAceuGawqGC8W+YteUR/WmkG5KOEn8NpW8wcF8JgjFX6/0QOqBvTeFjjoX5?= =?us-ascii?Q?Ja+sSWED/f86Rkh4uzMGEe6+uC0Uv3W1BoVw5RDraVvtFWdpeLvoTDWTBHlJ?= =?us-ascii?Q?2z0xFMY3fIPgM9udesafx3+fFJu/nZYniWJvWXzrM4gMryMBHDIttS/dc9qL?= =?us-ascii?Q?HMuDPwD9yT7IOc8WlOryFdBFX5VbjK6lyvD8Nut0WPZEoH90bRORBzuOTCnH?= =?us-ascii?Q?knJj4ctGDTF6RYBXikrGpKv/sb8/dgL15GdUoa6+U4Q5Kxtlhj7A/KduYkR/?= =?us-ascii?Q?X7zO+2GpZNa5w2DC6MIJL3tNnsn8K9Fv/vr6Z96ZycsoYtjCiL+MxYv0ulJz?= =?us-ascii?Q?XdQ47B4Yqygg3wrD8iVpupS8+1VMH/HCHvZVnD/BaP6/B/f2KYXQqDKqU+LU?= =?us-ascii?Q?QPemtjx/7fYIiiRrT61lxeuxQ38iuRn8h5aLbp5T/VqXDxwLHLr8T3jdLhdF?= =?us-ascii?Q?yWq/6u7EhoAGz2CZ97zwnThIIEh6wii7g8IzhNCM6qb1AucOhyD6Y+vFw8zF?= =?us-ascii?Q?5Z2F5AMDyf8yxetxoJ6WBnOZZYy++Mw1sLqa3Q+4KojItilRCTyQ4cabj00y?= =?us-ascii?Q?BNqz5m08jz+kB13bt4lWSRfEWUD2NthxgNYz8deiNzoTj+B504wg8dc3u5UC?= =?us-ascii?Q?jGW5zii51j7eqK811P+ahHwxE5MdlthpYuo6Ma+nr6s8ggMzhIGH0oXedPc4?= =?us-ascii?Q?a/W7l/WXCRQ=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)(1800799024)(10070799003)(376014)(366016);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?IZVSwLxMlSeaLs9xgHXbAN9q26sxks1ZwszMUuw+wQ8grQjm3uANE9KbrQOc?= =?us-ascii?Q?JaNXWLFOXlaq33b7KCkeKk2h6Gv5m/Cp2nQR6+xt1RVaEe2aoxJMKkPQwYlh?= =?us-ascii?Q?i33GZ+sXAY2C43y9WjqBAGcz7RgUnu0YgFohlTvdXTIVraRdgjsu/eVGM/gE?= =?us-ascii?Q?RrmA69hIB2Alz3klWYXuzxQto7MQpcwzwq111proaTaF70OhQO/S9/mqjIYW?= =?us-ascii?Q?+IV0hJc4Ej0C+eo1Fb0BqBGYoVIfv+XRcWQyO5bYW9R/gUtWK6WlG2B8Idam?= =?us-ascii?Q?4taAnX2c4VsMnMxkf4qpWqpakmGvqaZMP5tNM4V/dXk4x3tflN+9yFDbJym1?= =?us-ascii?Q?UwdIr80zS+jMO6l8j2y2dvRPpYqmJOkgwliFGdb35JdeJU3SAgzm4FTbs4E8?= =?us-ascii?Q?o3gCz+J3Or/bdkpAwkgG0xPlvTjW0WQzGSJaJ7wdkG/KGJk6sCLM34/fAJoM?= =?us-ascii?Q?9eBmWZ6riHGDCZ2CvM34FzO6aGsCll24eemJSxfJd+Ez5+x+4gPPhBl4LFOH?= =?us-ascii?Q?y+YjDvWjgDdQxiwE4Bi3icRc5jMFX1MK7R7idHCxHLYVRUi0DMJP8EUH8C78?= =?us-ascii?Q?DLvI8QgwYJ1NoxcThekBYd4AS7SArVHjwdFde9M6ELD4l0jSquyk9Jcp71YA?= =?us-ascii?Q?UaeNYgHEglkp6G526BlOkiM+wWH6s5ueOTWp7gM56DblbgacBsCRO9V7PaUZ?= =?us-ascii?Q?aAZge/nbxjlYaJ4AbgsSw1cWcQSksltO6GcclEkXsgA0hx9oKi8NHleTnj5+?= =?us-ascii?Q?iUZCzXsUMXDFchMbzrA89p1A3qzKgoLPwYqnlPq2LzmsxJcKYpdwKd8iFcOE?= =?us-ascii?Q?s1SWmQX4pItITAzsy0bATtW+d+ZTT+hs4Q747zJlXKtdIiuw29wiQFMcHKDz?= =?us-ascii?Q?3TIf8+FjmKfk7AueyFT2YKtkiXNmsIUZy/Pslxa5+S3N+/3BzVK3j3XBZudN?= =?us-ascii?Q?8iBm8abUoJKxa55BtwZ403O0VS8bxdkDnrzf7UGj7bDqJFMkjIu4LbjwKW5S?= =?us-ascii?Q?HSOzwLl8DQSkgxr3/zSYfwX7jO8xbh3k1SyzBCMEDb4Pgtf1pfUjvEHpFObl?= =?us-ascii?Q?Ds1trZ7cZIaGyUBd/wpE2229SlplQw1vweF+FsVnCVtbJ77PvixDI1XtHp6f?= =?us-ascii?Q?ZIy6xkwDmZvfV3Q9XbC9ys+K7ksx1F0j4k0doIfWPxkAaX6syLj1m2T5sV7E?= =?us-ascii?Q?ripwIKEFtFZKYLfhsu7tVkMoTvCKMFivFSRgpDyAfH2hAunm0iJNsXkyeJq7?= =?us-ascii?Q?itfz3vCKGmiYhsPViV+FSsVYLxxd5lfnc8Zr/N/x2nCNgmwmuYKpZhqL2AQ/?= =?us-ascii?Q?Pqo2j9ZA5KStb/bmapxPxwEiQ+9bwlgpb+ZlsRlT4FZYbHI5sae7VpMjE21I?= =?us-ascii?Q?DzjbkdajalQeNs/MpO+qNps3CDyQIwWo5uUmadaTXRCQTXMA4U+2HWPXfDBV?= =?us-ascii?Q?QBA6JVNqnqee+xosAkRtUwYVZleYMPZK8XuXDAQzFts2xIU8yPgxLsWzksiA?= =?us-ascii?Q?soJeQTjhuGMDnoDfjBKCwjzjORB2DLyZ2pJIW8cLSYV4+MqzhfhcU3yPHUZ5?= =?us-ascii?Q?gE4VQWVPlJkixOuOIRp3+WAXIegA2RbTjLFdHHBkmQjI4I6TbbEBpfUIarA+?= =?us-ascii?Q?ZBKqDeQLOelbRhFmiDZYOuP0e1AM5jfxJ1JokrhexElh?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 93d24bd6-add2-4083-e67e-08ddea17a3ba X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:41.0137 (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: aalBS54RxVFbPRHMQddx7R5QI8sD/xzJEDuvcDz6szPwVsiErrtNiH1ooOcwxOhqxMFrqSTd6x3V1nq/Jxgufk1uHkAfMJEweoxZg72Z3Cv+JhL6grEQClp207zsnNt8 X-MS-Exchange-Transport-CrossTenantHeadersStamped: FR5P281MB5644 Message-ID-Hash: 2JMKC7I5G4YAZFVXUJWMWZAFBDLUX7UU X-Message-ID-Hash: 2JMKC7I5G4YAZFVXUJWMWZAFBDLUX7UU 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: 1756814953705124101 Content-Type: text/plain; charset="utf-8" On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- src/ch/ch_driver.c | 8 +- src/ch/ch_hotplug.c | 175 ++++++++++++++++++++++++++++++++++++++++++++ src/ch/ch_hotplug.h | 6 ++ src/ch/ch_monitor.c | 2 +- 4 files changed, 189 insertions(+), 2 deletions(-) diff --git a/src/ch/ch_driver.c b/src/ch/ch_driver.c index 764efb87e9..760fccba82 100644 --- a/src/ch/ch_driver.c +++ b/src/ch/ch_driver.c @@ -2389,9 +2389,10 @@ chDomainAttachDevice(virDomainPtr dom, =20 static int chDomainDetachDeviceFlags(virDomainPtr dom, - const char *xml G_GNUC_UNUSED, + const char *xml, unsigned int flags) { + virCHDriver *driver =3D dom->conn->privateData; virDomainObj *vm =3D NULL; int ret =3D -1; =20 @@ -2407,6 +2408,11 @@ chDomainDetachDeviceFlags(virDomainPtr dom, if (virDomainObjUpdateModificationImpact(vm, &flags) < 0) goto endjob; =20 + if (chDomainDetachDeviceLiveAndUpdateConfig(driver, vm, xml, flags) < = 0) + goto endjob; + + ret =3D 0; + endjob: virDomainObjEndJob(vm); =20 diff --git a/src/ch/ch_hotplug.c b/src/ch/ch_hotplug.c index 524355b93c..95fe1f0f6f 100644 --- a/src/ch/ch_hotplug.c +++ b/src/ch/ch_hotplug.c @@ -156,3 +156,178 @@ chDomainAttachDeviceLiveAndUpdateConfig(virDomainObj = *vm, =20 return 0; } + +static int +chFindDiskId(virDomainDef *def, const char *dst) +{ + size_t i; + + for (i =3D 0; i < def->ndisks; i++) { + if (STREQ(def->disks[i]->dst, dst)) + return i; + } + + return -1; +} + + +/** + * chDomainFindDisk + * + * Helper function to find a disk device definition of a domain. + * + * Searches through the disk devices of a domain by comparing to 'match' a= nd + * returns any match via the 'detach' out parameter. + */ +static int +chDomainFindDisk(virDomainObj *vm, + virDomainDiskDef *match, + virDomainDiskDef **detach) +{ + virDomainDiskDef *disk; + int idx; + + if ((idx =3D chFindDiskId(vm->def, match->dst)) < 0) { + virReportError(VIR_ERR_DEVICE_MISSING, + _("disk %1$s not found"), match->dst); + return -1; + } + *detach =3D disk =3D vm->def->disks[idx]; + + return 0; +} + +static int +chDomainDetachDeviceLive(virDomainObj *vm, + virDomainDeviceDef *match) +{ + virDomainDeviceDef detach =3D { .type =3D match->type }; + virDomainDeviceInfo *info =3D NULL; + virCHDomainObjPrivate *priv =3D vm->privateData; + int idx =3D 0; + + switch (match->type) { + case VIR_DOMAIN_DEVICE_DISK: + if (chDomainFindDisk(vm, match->data.disk, + &detach.data.disk) < 0) { + return -1; + } + break; + case VIR_DOMAIN_DEVICE_LEASE: + case VIR_DOMAIN_DEVICE_FS: + case VIR_DOMAIN_DEVICE_NET: + case VIR_DOMAIN_DEVICE_INPUT: + case VIR_DOMAIN_DEVICE_SOUND: + case VIR_DOMAIN_DEVICE_VIDEO: + case VIR_DOMAIN_DEVICE_HOSTDEV: + case VIR_DOMAIN_DEVICE_WATCHDOG: + case VIR_DOMAIN_DEVICE_CONTROLLER: + case VIR_DOMAIN_DEVICE_GRAPHICS: + case VIR_DOMAIN_DEVICE_HUB: + case VIR_DOMAIN_DEVICE_REDIRDEV: + case VIR_DOMAIN_DEVICE_SMARTCARD: + case VIR_DOMAIN_DEVICE_CHR: + case VIR_DOMAIN_DEVICE_MEMBALLOON: + case VIR_DOMAIN_DEVICE_NVRAM: + case VIR_DOMAIN_DEVICE_RNG: + case VIR_DOMAIN_DEVICE_SHMEM: + case VIR_DOMAIN_DEVICE_TPM: + case VIR_DOMAIN_DEVICE_PANIC: + case VIR_DOMAIN_DEVICE_MEMORY: + case VIR_DOMAIN_DEVICE_IOMMU: + case VIR_DOMAIN_DEVICE_VSOCK: + case VIR_DOMAIN_DEVICE_AUDIO: + case VIR_DOMAIN_DEVICE_CRYPTO: + case VIR_DOMAIN_DEVICE_PSTORE: + case VIR_DOMAIN_DEVICE_LAST: + case VIR_DOMAIN_DEVICE_NONE: + default: + virReportError(VIR_ERR_OPERATION_UNSUPPORTED, + _("live detach of device '%1$s' is not supported"), + virDomainDeviceTypeToString(match->type)); + return -1; + } + + /* "detach" now points to the actual device we want to detach */ + + if (!(info =3D virDomainDeviceGetInfo(&detach))) { + /* + * This should never happen, since all of the device types in + * the switch cases that end with a "break" instead of a + * return have a virDeviceInfo in them. + */ + virReportError(VIR_ERR_INTERNAL_ERROR, + _("device of type '%1$s' has no device info"), + virDomainDeviceTypeToString(detach.type)); + return -1; + } + + /* Make generic validation checks common to all device types */ + + if (!info->alias) { + virReportError(VIR_ERR_INTERNAL_ERROR, + _("Cannot detach %1$s device with no alias"), + virDomainDeviceTypeToString(detach.type)); + return -1; + } + + if (virCHMonitorRemoveDevice(priv->monitor, info->alias) < 0) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("Invalid response from CH. Disk removal failed.")= ); + return -1; + } + + if (match->type =3D=3D VIR_DOMAIN_DEVICE_DISK) { + idx =3D chFindDiskId(vm->def, match->data.disk->dst); + if (idx >=3D 0) { + virDomainDiskRemove(vm->def, idx); + } + } + + return 0; +} + +int +chDomainDetachDeviceLiveAndUpdateConfig(virCHDriver *driver, + virDomainObj *vm, + const char *xml, + unsigned int flags) +{ + g_autoptr(virCHDriverConfig) cfg =3D NULL; + g_autoptr(virDomainDeviceDef) dev_config =3D NULL; + g_autoptr(virDomainDeviceDef) dev_live =3D NULL; + unsigned int parse_flags =3D VIR_DOMAIN_DEF_PARSE_SKIP_VALIDATE; + g_autoptr(virDomainDef) vmdef =3D NULL; + + virCheckFlags(VIR_DOMAIN_AFFECT_LIVE | + VIR_DOMAIN_AFFECT_CONFIG, -1); + + cfg =3D virCHDriverGetConfig(driver); + + if ((flags & VIR_DOMAIN_AFFECT_CONFIG) && + !(flags & VIR_DOMAIN_AFFECT_LIVE)) + parse_flags |=3D VIR_DOMAIN_DEF_PARSE_INACTIVE; + + if (flags & VIR_DOMAIN_AFFECT_CONFIG) { + virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", + _("Persistent domain state changes are not supporte= d")); + return -1; + } + + if (flags & VIR_DOMAIN_AFFECT_LIVE) { + if (!(dev_live =3D virDomainDeviceDefParse(xml, vm->def, driver->x= mlopt, + NULL, parse_flags))) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("Could not parse domain definition")); + return -1; + } + + if (chDomainDetachDeviceLive(vm, dev_live) < 0) { + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", + _("Could detach device")); + return -1; + } + } + + return 0; +} diff --git a/src/ch/ch_hotplug.h b/src/ch/ch_hotplug.h index 04915ba5de..4a9b9b3b3e 100644 --- a/src/ch/ch_hotplug.h +++ b/src/ch/ch_hotplug.h @@ -25,3 +25,9 @@ chDomainAttachDeviceLiveAndUpdateConfig(virDomainObj *vm, virCHDriver *driver, const char *xml, unsigned int flags); + +int +chDomainDetachDeviceLiveAndUpdateConfig(virCHDriver *driver, + virDomainObj *vm, + const char *xml, + unsigned int flags); diff --git a/src/ch/ch_monitor.c b/src/ch/ch_monitor.c index ee629f61fb..2da71e962b 100644 --- a/src/ch/ch_monitor.c +++ b/src/ch/ch_monitor.c @@ -604,7 +604,7 @@ int virCHMonitorRemoveDevice(virCHMonitor *mon, if (virCHMonitorBuildKeyValueStringJson(&payload, "id", device_id) != =3D 0) return -1; =20 - VIR_DEBUG("Remove device %s", device_id); + VIR_DEBUG("Remove device with id: %s", device_id); =20 return virCHMonitorPut(mon, URL_VM_REMOVE_DEVICE, payload, NULL, NULL); } --=20 2.50.1 From nobody Sun Sep 7 23:50:56 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=1756814989; cv=pass; d=zohomail.com; s=zohoarc; b=R6sSbLg6rWKYDjlvMQkqejHsxWMJIQbzilsBtY7mGOucxBiha6sB5Oh/gyVkkDFTvCBW/RQsBrX5Bu9QWJxdnpwUzoD2U/tc/5gKVOUVKMa3k6tbc+Oc3GIiNJXQTzCFEG6TR3tq7rT81SZoogniG0doYv2V2r5+fcRePrhASNE= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756814989; 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=qNwHtk6ftbGJ4x8exZZEpjqXs181s+o0PCoEUV9CbVY=; b=PLXD6pWJ20mBMRWF+kMM5N5xF1o+AGgiUD66msXvNswvZFTimlxMsby1iLmjS22dcxlKZvti4xjUSzuCFfdO51zZt3eSBju/S34XkzPhj6fTzHfBSTwOjVkmbEuyI91NWtE7tfNhmOIcGbV7RrDqbbQVI8yOcAyCohn4K8iuehc= 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 1756814989362155.15403830139553; Tue, 2 Sep 2025 05:09:49 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id BCE1C44241; Tue, 2 Sep 2025 08:09:48 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 2F4274449E; Tue, 2 Sep 2025 07:56:57 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id B6A3144184; Tue, 2 Sep 2025 07:55:55 -0400 (EDT) Received: from FR4P281CU032.outbound.protection.outlook.com (mail-germanywestcentralazon11022111.outbound.protection.outlook.com [40.107.149.111]) (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 516654416A for ; Tue, 2 Sep 2025 07:55:48 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by FR5P281MB5644.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1ae::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:41 +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.9073.026; Tue, 2 Sep 2025 11:55:41 +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=yQmIW1ufwraSN/ArI4wkDJ5zxxr3NJnlk3/YMaXIhGJu8eQ8ph4y07FvFdZoJIwpbm5X6OUjKkfpDQBxhL2oOsDMKpsMqGrymo/akplsZcB4piHAf7ajkuMG7KdPOlPEnzs/mfzBEbIBr7vtK8XF+4/By5S6XSONeVlWaGFYBSwbE0Beury7fnY6PIrHTfDNX9gTuQghsAgzRQJHTJZ5/0OPgVLgpIDZD+MmHPA1zhDjUwUIhwxvIU4BJNrrbEOh5P6mK73PnjClEbtxp5R6LkhchZp088E53u/qXzqDMO/hdjFi6PvcKMmFCYfp3dupMRfqepw9/jHxVPJEiEZBWg== 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=qNwHtk6ftbGJ4x8exZZEpjqXs181s+o0PCoEUV9CbVY=; b=fiBlDo9T0G63oelhewXgxZFFDMa/Zqc+8dHUrLjYJJBgF+260CbGzSgsEVvsIQY2iLVAniK2/R8zl+ctolymip+2FmcOlVmjjQB69No6W4SD2fLvh/ax3GEmg3EYsGsuTrWuo5bNPX/8nsycWDhBZZ49BYjNIuZ4BLy1XgtqSMXY2K9M0IwssBW2O/kESUytSE4j4KskemKIlLnCJaTVU98mrzP1/p3z4eBVRbGcx8dMDS/yZdmSIFYaJrLOXxDivevQxHI4yPD7oLqWS1La8LDH9T/Grb1oZYJKFXTkGl3HjTQczt0THVJE9XZCgiD9n9y1DcwqUQUEQkJPtG8fMg== 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=qNwHtk6ftbGJ4x8exZZEpjqXs181s+o0PCoEUV9CbVY=; b=gschfU8qhy6I5EOsx3h4Q9GeXJbjfbhQANPrYqNUfAxQO/NzJiyi0N9K0FS6AIYp4SUBFqjy0gQtnx9328pp0yqGR0q1UBYkPpTLCcN4pWvRRUnt3on6lB0En+X6cz2fOQGk8lzaCapk9W0S0f1TeWcgrPjmilZ2pesXRnMTsymlHL7S4clenI0sY4pgukzSP+5NDtK9VNCRzEoGLlF95QIWYoNp7a+HWcMGxoTe8lKjemOc24lhCCGAQS/6xlIG7oRjydNvU4Qgz0dOyk4X7D+C/YcIhurehSRfL9bRZThKPdNuwWFlXt2P2S+A12fcmAvRYZcpPBaJXS1pXjTELg== 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 v2 13/13] NEWS: announce disk hotplug support for ch Date: Tue, 2 Sep 2025 13:55:28 +0200 Message-ID: <20250902115528.557133-14-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|FR5P281MB5644:EE_ X-MS-Office365-Filtering-Correlation-Id: efd0620a-fea0-4a70-9c41-08ddea17a400 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|10070799003|376014|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?Zy6Hs4bcE49NghbCh3fXg8GuMjXugRSyoIUNy5pNJcALCJiL2usHixYDGHaR?= =?us-ascii?Q?XERsPpUv5Zoyuclmm8PAevGGCAaeHIw4TQWTrFSdYhTyWLUBM/DDELWmhl7z?= =?us-ascii?Q?EmjnvTElEkLbD5c8Fb5lWTInD6HV0/6rLsDJxj94ShLUv0OTI3aJj/gf5cq5?= =?us-ascii?Q?A9k/hN3W+ZT4Zp95dM1JNeLF3Fxf6v6jE2NWHFrC+OQUAsxFUkW2aNvVtoae?= =?us-ascii?Q?hZ2QY6IXpzyKf+gQq6fceUJMad4E0vEXhbabOi7NFW1nGVB/sXpcE1soc9GZ?= =?us-ascii?Q?XkK4JELzzRx4e4HKRGI5Lx3Kq+TlDxk6VdQmT/NFgpt1x5r/IH+Vu1qDw7Xw?= =?us-ascii?Q?cOteXtXUFSiHXRma58NpPg5vyzkMWWqW3RzyUz/Y1KhLwnF4apRB1qkcNTe/?= =?us-ascii?Q?TR+gmcUHPu+Fec9uLj3M6VyOOkAbi1j23lFmHUBM/91hUjWSj0Qcycfg2eNj?= =?us-ascii?Q?RT0AD0iom3XYkZXHKIEpW7LD9vGVJ6INNVmvLttecnwEKLl3Q7D42xzN7pD4?= =?us-ascii?Q?nmmldh+qBDI9Rm0P9aEyjI9RB1YyrDlRhK2gwLDUeKZE3TTjABUYD7xgdC3R?= =?us-ascii?Q?agBAoA7dJyQzSucnmegLC7lcM8CUpV2fdhuVcs0mG1ZJhEb3niTojAnHTIfO?= =?us-ascii?Q?k0F6SPvbUkzrgJj/bKkJLhwo/QTNKze/Q9BnfaHqWOMcJ+hQ3W0XWSp0Ujxx?= =?us-ascii?Q?+PQmkhc/ObR4t9aJbQPpFSpSZk6ReqvWaqb0N3ZaIva7Gd/F3c+6pVXcqiAi?= =?us-ascii?Q?zhX46q+PjMP4OkortiXu7Gly0ZpuYCeUoBczbM22ValcIgAZZVOa2PYWLTS2?= =?us-ascii?Q?jkESPAgYebegRlnaQHQD4djmBhVskD0AEm1zQythroqWXIrsRY6oJqt1m/2c?= =?us-ascii?Q?OlBHBogz9M+xxcmyOXBKmf8HNj1RrCkkhFCAfodVxZOuOsJC64AyiV4Q/Pl9?= =?us-ascii?Q?iIFNuBrrHGzOUHt/eRCsNCGmk/q3Weqr6g/92TUKUR6qHmxtS+PHgpKleD7D?= =?us-ascii?Q?os56mJp67VUUvCrobme0OjIK663GeGCjCaSacKnc5LtRLXHJ0/HFip5daJCQ?= =?us-ascii?Q?UHmbKXGeZAVhOC6Hkc3uwOcrwLJLlZ8ABIPgRZZMq6WpD4zNGQZ0NxBaopZf?= =?us-ascii?Q?2r+p+GkAKfZ0CZNZOsoFtP25Eeqjq9AA4rzOe7BBdVP97GasqMnIlXdBXku7?= =?us-ascii?Q?FkRN38/U+qhy9asMhzzWvk3coBudXtf89Z7BB9DKIZY9XBOyjQOkzsOz5IeL?= =?us-ascii?Q?uD0m/3Xn86JD2BmhazcUzWFFxNb9GeDPMSAONWgQeh9fL/9Q6qpzzdVSqKmf?= =?us-ascii?Q?fQ3/jFHdf8oIGfNtYTb1ls0ZXKpfr+Pjm1HTeKdJGdHs8jUt1d+UiyNzfNPe?= =?us-ascii?Q?6FjS6HxIsdcZIVjuEOlRkh4pspkYlhW8DAZnh8L7uOiAVY6EW3voSRkAh+yr?= =?us-ascii?Q?dJMkC7TdVUM=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)(1800799024)(10070799003)(376014)(366016);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?x1ThzVoMbnBAYmGG17qCZ6MNF/SvxpjAqdejB2HTIncTJC4yzfkNXlbRFg9l?= =?us-ascii?Q?+9FY1fietYhcNec68l56/HDyPdtMQb8onfwp/eAt/fxiFiKkHmLyXaq/80s/?= =?us-ascii?Q?udYy+/tnd30sjxytlq+z7+MOFfwZJWQMvTVLAv3d9OXLqZyoRFpfgvENEGb+?= =?us-ascii?Q?tFQdu9aMUiqFRjpc6Llf6osTdT9adLLvJv/NVDxkoSM58JoRxVloUxpM7dGs?= =?us-ascii?Q?RbT31kngURjNhmN6DKQjBi8tsx+M0Ei6J9cdR2cnDGt6PzpoY67RIVkMyH8C?= =?us-ascii?Q?1eQ0nKTXsypzrAH9HHFjamIqky7Z2X5ovUe05aOsiHeUQl+L69W5VSMZShWJ?= =?us-ascii?Q?3lS3hFopu6ORiGxKV8f7rW/CX+hJtKlnjGe1xe7J8DVJhSYDVoWhiYA1X7YY?= =?us-ascii?Q?IGd1P10qYwie9tt8dF7dwj43WuvERm45xb3/713o1vzt9+phGN9EEsS8jeny?= =?us-ascii?Q?5ZOC1Yq5j/VMFgIXl7sBlh+YfWwLMpy0WlJom5JwIK/vIy5Lt4EzevzZUq3w?= =?us-ascii?Q?u2mROLDSJ0C35LZeFw5uuQ1WLBiuwiWmu8ALFi//kyArXxtfX7k96+6sF7Kr?= =?us-ascii?Q?fE3iB2DKuKHC75lyY4Jk804b/VeecMy65U3iZv01u6ZuONTSQOmiMscPhuRj?= =?us-ascii?Q?aWZChTdcJe6Do8ouUK7HeVaW5cSZZxqzqf5SatlRM+kTC2xhnFAgL/AuMYAF?= =?us-ascii?Q?3LAMylJ+BunAD4meoUjciwMQWZ8C+AYu86V64uqUuUSW3DFTuvKc/GJUgNqg?= =?us-ascii?Q?vy66eCF8ahsGOUs/Ihze6844Oepl9DL3satW5vHAsakeUQYzethWWdYJ+dbN?= =?us-ascii?Q?5hM2kzAlwqr9Hm6jvTeZlMK9QHI6EDkwgH4zPqc3eCBN1tkBDRIQHLetOOAr?= =?us-ascii?Q?COejjR47NZXC44TbLUCWtb7NKFogoPbL6Qga3yIv5mYFPF/xRpSFbwbmE9Dy?= =?us-ascii?Q?MEOqfDsL8lUGBkW9OQ0fIMGnjQrtj9xxgbq21Lcne5GmhKbd02RUT2HCModp?= =?us-ascii?Q?5yTRs938aYpnWeqI1uRCKxp+7eOAnuB1/M5j2PtrGJi88maQP3elC4SF8dQm?= =?us-ascii?Q?XoCWrAEzTB1c3oW//brHJ7+re1a2Mii8z/Rb/XokjnJxfCuQa13G7V6BAuuv?= =?us-ascii?Q?oFzx9SURB7jktExL31YAZhyADXj6g38RcvADAXr1FTniJmqNtDMVhbib3t36?= =?us-ascii?Q?zWIaQZIBgQxQsLOYLwFdSUy1z36t0qHCeV4NVIFhgfouJ9oETWNa9xs3OA1X?= =?us-ascii?Q?w68qC4Pyk1OyVS6tWkaoFU58Rgf1ca6jpJe/B6DTdjuX58c0z6vDZ6uMlf/V?= =?us-ascii?Q?uglE4wAV6SWQKih4FzK4xg5TNnbc8h3oIO1g7M9V94W5kYcNcfx/AbsIozcr?= =?us-ascii?Q?vObyjOfSjwsCCOJrIc2VVMb+5cp3Uur/VPzCkVRa8N1YLNm2TVTMNaFmDJZR?= =?us-ascii?Q?QT9gtQ7k+E2bQ2pqPEM0f8PEA/S7xzCm/Bvf7ATLcKHKQLyAHiM4PP39bS2K?= =?us-ascii?Q?VJl2W6mtpdATcSXaGexIuUYSai0EateMqxGJRS7Wuw7pklWTayW5G5y0QlQR?= =?us-ascii?Q?oM/6mm6hPehr2C/UFdTkNNyB2HPfnvd0NW5qCRIHobTh6sciUPA9DpvOSYqL?= =?us-ascii?Q?Mrrqm23AUR3YJDAtGTn4RTYNgNveb0XDxfyZ9UJKcGVZ?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: efd0620a-fea0-4a70-9c41-08ddea17a400 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:41.4845 (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: 8/JvXwLq3szQ6RM6qH33g0jQJNL3ysz4hRXIE6z0+dN4vRf9J0pdQRukYjqWhbCK1UlMWqj9od/ZZUAxg9EaYzLgEuoL7tYDoHYu3p54g2QEd/CtEeU82Gblc7XWBuAQ X-MS-Exchange-Transport-CrossTenantHeadersStamped: FR5P281MB5644 Message-ID-Hash: 2XAXZVPKLFZPL6TMI3L5Q4VQFTOLYV34 X-Message-ID-Hash: 2XAXZVPKLFZPL6TMI3L5Q4VQFTOLYV34 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: 1756814991826124100 Content-Type: text/plain; charset="utf-8" On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- NEWS.rst | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/NEWS.rst b/NEWS.rst index 9577be0213..9b64489954 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -17,6 +17,11 @@ v11.8.0 (unreleased) =20 * **New features** =20 + * ch: Disk hotplug Support + + Users can now attach and detach disks of Cloud Hypervisor domains at + runtime. + * **Improvements** =20 * **Bug fixes** --=20 2.50.1