From nobody Sun Sep 7 23:51:06 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=1756387164; cv=pass; d=zohomail.com; s=zohoarc; b=NciN1uquu9mXntAQz98qwXSAIX8ZAZh5d+yAD40LbAQvyTYd/toHXFa9/PqgogxqGSnH+0gdJVxB1bxAZr/YYNliPSHmfcjqqvfuZC2Ey92hpB/ZZ0v4+Q5407QxQUFH1mtsObiYJ1s+yHTwGDHoTIx35X7LTKmaXpbeHnvmbHc= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756387164; 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=/XcJDUG7tdEomjZtdZKI34KvbUaOf9eW5fP+sX/fKKk=; b=Nyqwd2X15eHw0EWG2mXavM3qwX8dMfmn5cOhzfVFivV56edp418jjX0hiF+VeOtA+Cv5KGjsFf2edv0EpYMYnR+b0NCIFT8FYxDZXOGDi1QQ1KS6zbm4dRfzIo/fJPuwJ/c1G31HlJsb/1uz/lDzzXf1ZFFmfDs1J2SR49DXfSc= 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 1756387163705247.7159197206421; Thu, 28 Aug 2025 06:19:23 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 4265544220; Thu, 28 Aug 2025 09:19:22 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 2BFB6441BE; Thu, 28 Aug 2025 08:56:25 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 792AE44095; Thu, 28 Aug 2025 08:55:15 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020075.outbound.protection.outlook.com [52.101.169.75]) (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 EE98343E3E for ; Thu, 28 Aug 2025 08:55:07 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEZP281MB3073.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:74::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.14; Thu, 28 Aug 2025 12:55:00 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:00 +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=P7aR1FEXZ0ZGHtWztKPbB8ziemxokxrK9LC4afufYBKzb28DIIj3WELdE3cnZ9Uol/j1IPuDx3dNRr6LP21wrihTv1PPvz1TsE9nMs/R4Xg509Oy8TdYNic/UthUvUNXvp0YY7ymVZhwyuMcBDrM2uNsyXvV/ckeomSBl6TlJpVNzfu2Eg0yjEUGiq9sa1IZu0eAEx3LYwQsr1Vm3CUpC/BsP1AzAkORmqwTFaGg5xrVA4Cpfek5Khu+wtnXzyuZXgF3M9wJkEuTdFLQ82ObmjteuypkRCT3mA78/MKzalhJvxh/3OCRxiKDcsSjrrGyKLeKxVivpC0W6T2QzbXNrA== 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=/XcJDUG7tdEomjZtdZKI34KvbUaOf9eW5fP+sX/fKKk=; b=Hbjtc1gEjXlvusuFiDACe1egMPWiaNToVhFALpD+97UFRE/AfKJwsNFfFgqZyx6b8xQFny8ybusLZft5ALWcuxIKTYBl/eaE4O2zjbN4zvVsa0gFzTSpslrjiunT2Rzb1RU6llixsCWv+wMplPdwudASOLYYZZtC4jMTPwy72rxNeDxR29sEJuMXAbVKu+uf4b8Y2F+vXUJM6cxaFDpYWrru5+NRZ0pCfZ/5mvo5zpaX/S4khAczF8eb/UrhRxb5sqm4Y3vaJ8bxXo2uQ9//p4ardOA/kEHbzAsZd7+mbv+iUPzTRa3sJ6LirSUINjaFcUcr7rWhp8owcYUyKrLw3w== 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=/XcJDUG7tdEomjZtdZKI34KvbUaOf9eW5fP+sX/fKKk=; b=dmiTuC1gSXfQ4mIKIxGTr2K9APHCsJ/CCA4CTSQyooSGyaHzHiNClZwPQdpnTFxkimH/5eGlcqrIabAt3goyXiivHyzFYbJ17WZr5rFG9hy6tLisgduE2OQZj48lOZqIVRYP/eJayzIsqv7eTVnCw8fdPq8oGq2Ntf95cLcfpDXkYPxDK3EHiV/q7KSvr38FUmSCclxuTWisLCpq7LhplQ6HDnUMWOodbmNMwXROo1wV7TGas9INP1mw9VngS+VErhAxLnEEx5C/MKslDs8zrLSw5J9wPM43EHLCr6BYCR+syVkw1Oxv2/HqB+2ZlF9lAowfwegiXw0/aJNa77h5iw== 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 01/13] ch: add DomainAttachDevice skeletons Date: Thu, 28 Aug 2025 14:54:41 +0200 Message-ID: <20250828125453.202358-2-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEZP281MB3073:EE_ X-MS-Office365-Filtering-Correlation-Id: a4e307af-2a02-4954-8731-08dde6321909 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?HfooT41/D5rv6QlSwOmdoLa1v4RFeoPvyGaCjJkm7fv1S5FSzJAZC0b4XA6M?= =?us-ascii?Q?n6fkTafM+cKhYVH6mxAi4Dl5hQAbQS34GhtGPL1oK49uxmdyYhkx413uSLX7?= =?us-ascii?Q?5mE/CMR5ExyljuipRt9p+nrckFaKUwLAyPYril6L+NAeLt6LHIJ5Fu+Ir7hN?= =?us-ascii?Q?lenT5yMoFShlwwr4BQ+Ie2gOwX6rlQjGGKGFQXmgHkOhHja9pkW+x48sOheR?= =?us-ascii?Q?dcg47AU0doIFWFmfMiJdjcuwVBuEBx6j+tjbbmVEqwVjXIQEKJfM2sY7tKy8?= =?us-ascii?Q?JPwP71ritteUVzbKnaAu0iCQEmved+PwF5mEUCMnqn/dgO7uDEq1kC6IySMs?= =?us-ascii?Q?X8ZHQcimAbc5cw6ZL/K1jqGsqAoQAQx0WG4yQSkcEJ4Qg1aaWPKSyFOj/4s7?= =?us-ascii?Q?42Ryx/ha+cucZMsUvjrYco1HvuvktAVlkPly439p4HS3nfRsmQcQvpm3/eY2?= =?us-ascii?Q?G96wZlXG+neNdHsKdDxHmz87+SgCG1ZP4YTo4DgWxK4knKzZH66Q1a/L2a6h?= =?us-ascii?Q?Mz3yApf3bmnzUcgvR3tbzwhQXWf8pmxb0b0JAmHP4A1gz81q3udDHCSnOl40?= =?us-ascii?Q?fViyt0InZvP7rMjI+GsFYJA3LicUH7H9e8ea8WBDl1M+b2oBTwjxXY+P8wNr?= =?us-ascii?Q?xniTTqFsYKYK6zfrs/dBXGpl1mhEbwmpKGIELjQwEIkeybdM34+lh5CM14g3?= =?us-ascii?Q?pdoVVsz9Rk0FvHfa+rGc3xt7CHua5bbmCrsDjgemq3xBBZu1DdIeBG3dD0O+?= =?us-ascii?Q?L6D4CqNXPN+orfUQQr2rD9awIg1UWIQuvj0MwPoizvXvFhDNOV4sFwBS6Y1v?= =?us-ascii?Q?muEI18W+8o3YEA4fBnF7BjatC2SSljyGtcB4l5nW9eGnV6dqrza7T0smWdJ2?= =?us-ascii?Q?w5bMFrD/BGLVA+JhPXRJn65DZln5oAtnNfTRfb8iIcO0mnc5Xgp8vDbIXPRh?= =?us-ascii?Q?p9ay0+Ynn08uklh8k/FvZMa13sh87WmgO0SXi+yHbTpu2MfodnsUp3eYk/qf?= =?us-ascii?Q?Dde0SIyLPJwBQ83DB7qtZeQ1ewNWvrqA2LZetFbDJXkhyYVE6cvJey1jAW+i?= =?us-ascii?Q?FPAracFPrKu72hrjvK07HdvjQzcTPRWb2izpcEpJksWlcwbTFbnZoGpAb/j6?= =?us-ascii?Q?NVEl0MFw2TvF8zlF5uyjH6NapdVtXCsbx7ZNunYum3Y38Ok+RVHLIKpQDocY?= =?us-ascii?Q?IV+aozivvLRSj6q8DDF9mXNkZUILvqP5SnNTn41OchZyx6Xkq6bCYRCsgYdU?= =?us-ascii?Q?qGVtzvLTsf3V3UORSmZ0eMH2vAUgGn18cJwIjlyHO1a6LS3UrsT8Px6BHHog?= =?us-ascii?Q?lcctKh33IWCFxN0o2enkxr9q+sUO6kzX+V8azAtWt+qMiCg1dkfxc0/6FEGN?= =?us-ascii?Q?RE/dZ7OK9FFGtqX7JQ2+WyTQMfKQcmAcObI/Mi1qs1G7967k4dN7jcxvl/rp?= =?us-ascii?Q?JCKBiUKYs/c=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?WJiM43RRbZLMOIxYWTX4R4ijg2VkRtcqFsrB1VI3N+Q5rzBFH2hHdgsnmia8?= =?us-ascii?Q?sJmjBu//nCTc2X+rfct/J/MhkbtpvItWcKZx66cgD9+mTbD9Ocu/NE4mDv5t?= =?us-ascii?Q?VgPvKS97nkUP6YthHPNi/kCZH69N+g6Xzpt/llp6OLNUIxj0fVdmd4eJOlD8?= =?us-ascii?Q?2ZBE/b7JYJvNyc79qea0z6ET7z6KFIW/IOEkn6m53t+p4S8oXtPYr4L/Hi2a?= =?us-ascii?Q?veW+NMBC/xn03ntPTF47kp3FLsrVvNpGOHH19stMcpYcOx5XjiIWPlzn9cXD?= =?us-ascii?Q?rQ76rMi1PdSurPFUv4oV05U2Osu3i0Hy0oOAfU0hsLyvIpELFRYBDkPxx8my?= =?us-ascii?Q?imxDpLTWLzeZ7ZIorCvbV2AsqdJVnTrrizcFtSyimoWWpjRdFAb8byT6oS2b?= =?us-ascii?Q?4QwZ0zAbDfAsuPBDoPkBvz3GAQkkkIWoS1CSLu0cno3le7bXQN0BeenamTUV?= =?us-ascii?Q?CKv0URz9iCmaZ5iHjTOvAp8k9Uy/Vd+7/rF4XadJ+5odD129nVuW6E2QWLgw?= =?us-ascii?Q?nI+ZtZ0IphzUTRfboLUlqlgCewCfzkKvDRieE82Bd4wKrEpNwlEuv2jlKBJ5?= =?us-ascii?Q?LY0XWjqa3gBHBL3tbJq+EzqdJTEciwreHZ0qEshFFdkBZSr1kurR3VWZ46tN?= =?us-ascii?Q?0nlTjef9DXWNrf4nxunpuakqkTE2t2ZBSDUSrfz1IalimUQJUIl3VICAyx60?= =?us-ascii?Q?0aHGwlk0HAM7Z+riIQufJFw2jLRnVTsveFgQfhfuEA5UeBW6bVOm3SC94HuP?= =?us-ascii?Q?NuOpZuR7F13EHCSEArp7h5Fuq1xl7GgBjdaDY0pRjSGAQFjjFTPRrQVe9/Jg?= =?us-ascii?Q?LeZnvVwpPVwKX25ttbGvNsDf7uZfuJEazffS53BQcMTr9ezxHF3oBHDmdgcG?= =?us-ascii?Q?mE4F/MZJVL1+2ZTNJgtN/sNvhmsFgMLX0airCRBydKcrpoCB2blyFWw2I26+?= =?us-ascii?Q?h0kfnZNhUlkpC+VM5+E4tJ7WinqLBM6R2Nx9uMUdUG/lCzybBtzATFINNBJn?= =?us-ascii?Q?uk/PlHmT0uLR/yObwtaT0OOnlcMTQlKsiGH7PWJ/nB/q51W6nWhxecL+CPv+?= =?us-ascii?Q?WtqxeIlimwrZD7T4DUNNilxhkqxlNKT6fu+2/FG9sPZEak2xypbixXHb3fKH?= =?us-ascii?Q?NRDlYsqnkNUCtmWBhK9IOjt00uKCb+yWAd6Q6mYlmPtJfK73SMPx+YDhg5wf?= =?us-ascii?Q?f3R22IBhSxt9qkzJzDluezBfT5M2unmxPlApp9cZtbflDr6MLsTUfelzTVA5?= =?us-ascii?Q?rcSuSjlNpJIJt2PyOY+pDAn01RAmJRvrMRJtzg0vYKfFaW+50LRO2CtTMfdM?= =?us-ascii?Q?9l1yHtvQVHvBNd8NGOhnG2IXhcrZqNfoc5hmgcsii/qzSAT60WGyCF/6gdKs?= =?us-ascii?Q?gmiACZZhWzXJ1Fy83PsDeGCP+Ako1s/zK66Dw9H3kKAvVsRt4hmbaJ409ki1?= =?us-ascii?Q?U34kOmXYKZ1gB3DAQ2RudA13wWT8pfLbdWJWG34vSba19U1A+FOzPuXezozq?= =?us-ascii?Q?KAMD7W1oDDurlZEoSaUqmQXk/wcpUdZ6gS9wsDQWSoaozUli+CP0Coq3GskW?= =?us-ascii?Q?CgSpSUyRdwkOxgvLfEz59lHQ9l2CcJ8DKYipBd6jPYbHShchHwtqp1tRf6wG?= =?us-ascii?Q?cF3cI2tnJDJQs8yz3vwY6Xjtv21M3alVqMl5yWtX+o1D7qheNIFZsKueak8U?= =?us-ascii?Q?Bg/7naFOlYNK8X3OHikZDxDxe5M=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: a4e307af-2a02-4954-8731-08dde6321909 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:00.1225 (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: 2mdSIeKzLTs/euVUho3kcakJwm8DHj+gJRBB88VW3dBM378+9HPOUAhK+sCMMCi7cWoRwO0W5TDBIiCfp+z9knhsofKgHfCYZt5UhTb90hegZNutWPSgiCqJiIn/NNRm X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEZP281MB3073 Message-ID-Hash: M25UVDEITKBMSFJMCUT5D2YACZLYWDAX X-Message-ID-Hash: M25UVDEITKBMSFJMCUT5D2YACZLYWDAX 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: 1756387167686124100 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..30cfb22649 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*/, + 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.7.0 */ + .domainAttachDeviceFlags =3D chDomainAttachDeviceFlags, /* 11.7.0 */ + }; =20 static virConnectDriver chConnectDriver =3D { --=20 2.50.1 From nobody Sun Sep 7 23:51:06 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=1756385942; cv=pass; d=zohomail.com; s=zohoarc; b=KSYIZ7QD9WNMVVJc9LmzhDGrOdRo0ZIz7VMGrzIWg+CuBW6eY1ybVyZcCW7atBesF95+NcYHsORMr5A9H7G+AE3Gh4gOwwFhyyqbXGJ27OxsuJFIx1wARGG5npJm7w/HUfkj5JU6Np7C/FadUxCpmxD0nEdqHdZp9s1UcyAOX4I= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756385942; 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=N2vN+2omnEPS/jnYhYtx2hR8NUspI+6AEnVgeu+Trqo=; b=Xxm2rghwdpdrMx6iphQNmwnNsMdZRyTWO8WXe3FL56EI/9qoFZFfVZHO/Qko2hUDd+6QKghO9XrR0oBCPemXO7vsKu+Tgirr5SYuozTEsLCXbjG67VeDt0ZNJrtAPBglH1fHS2YthoDVq85tTExSlrOLcer7/gxACb/qdNscM/k= 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 1756385942116402.38539523271834; Thu, 28 Aug 2025 05:59:02 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 678F24416D; Thu, 28 Aug 2025 08:59:01 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 02A8144093; Thu, 28 Aug 2025 08:55:32 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 4A46444094; Thu, 28 Aug 2025 08:55:11 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020113.outbound.protection.outlook.com [52.101.169.113]) (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 0A2CA44043 for ; Thu, 28 Aug 2025 08:55:06 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEVP281MB3430.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:91::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.16; Thu, 28 Aug 2025 12:55:02 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:02 +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=QkXZmv5eZn53louGiaZRheNZNRJ2yvf6l4r53cjjGH/MV/ee9NnyfHSDrDU/9TNEldZLdCA8A+13+Ol1oS9t4sp43IGkMmazn7FYNC8XUQMWJxTdRe/LMLnTWHjsFXejZ1iwxXDfcSZWY9bfwtiyevQJbGOgHKBnFC4ZZTuwBeJI7axTs8Frzt5UkDEy1zdLwS4qBtlZIKJp+br6yHWl8qWdT8oACT0Fgz80osZuPiHVVwBIUF1kiPZyVfueeaf/Jc5zEZcRM95B14yI+WGDfTgh/VwUnhxdtTehNblvzZmNwcxuiyRip2xP4BxSPew/tj9yTMiCh2aEFvW65Z6KAw== 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=N2vN+2omnEPS/jnYhYtx2hR8NUspI+6AEnVgeu+Trqo=; b=WAEyKyAK6TY+V2IMz+hp77kK5KPG6hnENX6LWeQTpD+j1WvEh+BGxtjZyzcLrET9rh2tVX/tPDZI3RprLwVG2NeVIKdU6SpxW729cysGAAQ5Hz5/UvohHeqZ8zBOXs/EqJLjDo5JoyH653ivVr+58sB0hfn/7ZM7OlZfST+6D2IUPFS61XJZHKQO30OifmDW3eTLq1WGEoA+DmxLCuq7i62h8GbmQuxXulOvA2S5iNxvQHKLjAZAfI8wFewfU4LF3nN2rzoiQVfQ7waOvSgaKngqPTKZNbpGyvsicKaDh+uxfPaf8r4OFmXAEBjXE1/47rnPMf+AJsJpwNjIu0kUIg== 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=N2vN+2omnEPS/jnYhYtx2hR8NUspI+6AEnVgeu+Trqo=; b=h4z3sLpYXx6N6ouIL1WJxpgwV91vk4fN7OUGuGOJOLWzoWwqsZpHudFULhxnUCeuDQEVy4zPXgf9vn25ognoZIR+zJ4iYsJqDpe2GLBD3Wzrm6ICFfebmhxo/JDUIZmuI2j96fp2VZxPyKjpX7+wnMpLR40dXUgjAToXULP23kHxkBs6U1e1aiozKxZrBmdkmmEIR/oUs2Q0TZzqfxG54z5Wajz2Ty0s9U4F2eX50gqzbtF5BZXDPXL7SkMRkxO9bLvP1NaLBLlHtIBRydyT8Gg1Ypxv1GmVghqw53XwcgvASqBXTArLnHvCRUJGCQf7lWdTOF+CcIY9YICn5kEI+Q== 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 02/13] ch: add DomainDetachDevice skeletons Date: Thu, 28 Aug 2025 14:54:42 +0200 Message-ID: <20250828125453.202358-3-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEVP281MB3430:EE_ X-MS-Office365-Filtering-Correlation-Id: 19118ed6-0fa5-4cc4-e83b-08dde632194b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|10070799003|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?9TxqONA8z/tKdZYErC2Vvc1knLhgxcpht8qMW881Gf5UGv5mGwfy6MayYyxq?= =?us-ascii?Q?5LG6JeXR8ddYbTJkzSsgEdWu53Uz5hSkjVRiN26OgI730wEHY2W5gFuLwOEr?= =?us-ascii?Q?1ko9L/d60FCaleP8mvH38JlD1h9d/8u7CbBjkHcr8MxRsBTytp2E0NFtsau3?= =?us-ascii?Q?HAiZa0EYBB9jk0IAC3UkncWDFvJ3VF92FB6ZoeW+84l7QwVriZGru6VqTmVz?= =?us-ascii?Q?n6r2o3wyTDa/cP+/yVfhx+CFRw1OV+MgptCVZuZAmhc7WWnUQfD4HKKnOL+k?= =?us-ascii?Q?oUrAa08ow6XBenRyId3TbJL4OH6RRxdLLRLprm0wWTUHrno0gfDIXaFwi49t?= =?us-ascii?Q?ATvrZ5BYkQbUyEIhabKijlrKY9NnTJRflrYfhlavxfQ7RDLKxtic80gwNxHA?= =?us-ascii?Q?Gpfps6BCe2Su7DhDhvPFM3U/HdMYv75NISeSUo7GuCTZJLZCvKskMduwM6Fq?= =?us-ascii?Q?6U2KEjsA6bJk9yJGfo1Q+eE86xp3p6H0IHB8dEQbqSZ9GZlREkhPpZilmD3i?= =?us-ascii?Q?HK899zZUT0MjpS9/f4uEo0x/wkJ95dYe1qBfR3sn5PJOspGnjRnjjUmyzxZr?= =?us-ascii?Q?R38jb3Szrwql+WoI7kExF8puGKgzbUBQYMU+w/42s3ZIU6NCGuGY7WjVBh2p?= =?us-ascii?Q?VtLBZRkD0CI2NtF4K14bPgvCs5z6IfgjnFglRGh6wXrI1PWyA7kmX/RJ0Get?= =?us-ascii?Q?xEBoVDBznISc8X6F52/1igh5IXuRsPvmADTElAYlrByrlfa5+ejjLVWfx2Ax?= =?us-ascii?Q?+xQecE6ZmsaBEvkm2OnhPvCjlKekDbciNQVF+lwMqH7cl920tDTFgKVhKOq1?= =?us-ascii?Q?wDVsyWavgm6Gf7JVk7PESh0adTSUUq89HmjJIWYZZDxz9OI0xNnzLQbTZCHx?= =?us-ascii?Q?VXZdZ+DKfUKUujfJw16H03ulZx/Xe1rpgj7ugKVfeexYzmky5oR/hhRAh5fq?= =?us-ascii?Q?kznbWb8/N6qE+XTaeGKV4uwYx/v+0By6YGVAi2wd7FJAHpwa36BWu8brOBZI?= =?us-ascii?Q?GqRctq4ougq+C3FNxq6CDCaPzxYJkim0kldh3kiqfBpC4+dF15MIEolkpiLS?= =?us-ascii?Q?SOD6utPyFFpsowPw1HLU+DTDD/eItvsZhw17wVUYhOZjAq1EuicyYhYH1RLh?= =?us-ascii?Q?ycLy7V/euzl1kQfDWqew5SeNvk2tFraBflXHdB606MaotTlzEoPh8ghMalTm?= =?us-ascii?Q?qk7k+6VoajEkrJEq69Il6K5TdilQ6uZINqkP9JxhBOkEYX2Gppk4XlGAAVOf?= =?us-ascii?Q?vnNgx6UATXgfSnhzp+iddFM0UeaStbH73T21K9LsADYJBPCKrg50cqxNXuLl?= =?us-ascii?Q?uxChyGQ4L1wMYbQVqW2FVVAxbYWBM3Ccjj3rRFXmUa9S4f9E76KGmwIIdwEu?= =?us-ascii?Q?QM75Tj/FMOKT0VNyXPa6bdFSc4JUFwW530psVieJPPKiZIOYwbHW+hHxLH6l?= =?us-ascii?Q?Qyldapf8N6U=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)(366016)(376014)(10070799003)(1800799024);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?AeBFDECf1RTQgDqRsbPPnki3zBeGnwJm9AKlEmPmRWuYe0iAA1iuleTw3xDl?= =?us-ascii?Q?1d22BU7jnI2jEACixKH4aHBKbt857QGCp+AEFvObMbJH2EHa/HtIZrPQEgRo?= =?us-ascii?Q?gNO4m9gFPTn9JClcbfdbC4rEK9ug/xKe2D9Gd8cTfv+flw7PankgFpDpGOHV?= =?us-ascii?Q?4Z97VSamY1enbHIP91IIKzI3HdXL7TiY6CIIjY0bjZD1jtiu4BzDkleyPUOp?= =?us-ascii?Q?0gRFAe4Q/kZTSD7KUHpS51i1cE+67HHeh+d0gGbX6KBaM06VAh/i2ExBEgX3?= =?us-ascii?Q?vpf1QDA/CL+ptjPGTlS4HUIIQ24SCpJNc0TzeWuaGVY3N6sHfzWhWlVRhdmK?= =?us-ascii?Q?dFnxwDT1TOuY1FnFa6E8m/GS5UEAHH/95gTioOFJkEYW1gFwPaFfetdNKlnh?= =?us-ascii?Q?26/E+bIARaIkED3LUd7UJpPj2FocoPIunmIta/XH6F6KNDCAjEZKKFbY/7Oi?= =?us-ascii?Q?qldMQENHksanHLKEbNAx4YAeRvPwGJFmyfjIZ57J1uBy6O/+tRimGdC8WEg5?= =?us-ascii?Q?ju52FOb0OhXXOWQ8rd4U+UsVkU3EtaXR7rjB7QTIp0oyfrLumZQT/SMV19/h?= =?us-ascii?Q?B3GzEKqxCx6mrWyYCyT5j5TZd6p9Hc4lDm/VL8T3SdY7ZU0mp4YKxqgP7jcC?= =?us-ascii?Q?6OLdNkVxQ2QdjsLapDQogSsz4G9qMMjkWdrqQlfnkHKjAYupxfviuvqy5VwJ?= =?us-ascii?Q?HKqYSZ0IzkVvg4bzGNPXvdUlEe0oV4Gpxwpoeao9PxIVXel3LvmyYrVUxohT?= =?us-ascii?Q?TqODOVKhOR2mDgZKNAOIbEYiq7lY2er8YM1+HBokRnyZEptaWpravoEGbIgB?= =?us-ascii?Q?3ocLjT/QbXKwwSp7bsUaVi50+Viu6MVxvbx+eqyrjqeNYYe/aCjzISEyMJ7m?= =?us-ascii?Q?oisIM6Vp87Qw0luUUpFk4w/USrkxIChqpWkoXE0TqjfD5JJ6iKVMeSd9eV+W?= =?us-ascii?Q?aDM0YGmmbgrxRKqlbm7rXVaexzLeZjNb5ClHleYXytTkry+eqclUBh+XYbX6?= =?us-ascii?Q?Q//+NsStLHMOnfvX8CoyKbrnPlCNamyWdKtq2W8qANaGk5KYnvt3qNJWMtqF?= =?us-ascii?Q?lCeiWFGgtgCZ5/cDhE8C4/m4KYGYBLgLqJloC+iVvixfXN0iaOqykuI6CokH?= =?us-ascii?Q?wlyzcz9HDF+LTuqAzbf0eIz5UwuZvTm3XjzFVtAtUOjdH8rzGQtxc38WaQBF?= =?us-ascii?Q?b9amYbfaSkmPGcbCfUgR6YqL9i8RXTSc+JmTXuhDGtBds2ClniNDV6q8TIyt?= =?us-ascii?Q?RhAI9Rjzf+DXVNxblD5yG8wMixDNUCtbVj4gZePxAmPJFmdyLBGCnn1DjsZj?= =?us-ascii?Q?yymFWFwe+RlzSVyKuzHJF0uRDF//uc/FmeLKsFntwOAdIYT4WZwIe26udhLV?= =?us-ascii?Q?3d2dfll8+ENYPeTbPqiWL7kxCvkjFMlIwriZ7lWss3lF19joNRVnYNPRqoIn?= =?us-ascii?Q?hSgmYgO70p9w+SxRRoPrAaZIEIVJ/+FWPKy2AbH/tZ2SqRclCwvFqPfSdJy9?= =?us-ascii?Q?DKMILsluG7+JkimcDRrcozzbGGXE8u+n1v8ESOv2nnEHksjzGo3lGTSckpjD?= =?us-ascii?Q?xphuaXiYG9yDdNLS7S+TU5/ZWORSQVxM+0SFc6cEMzew3/V5D8L8EJdL9pbc?= =?us-ascii?Q?iPk432au5kTOcjd00b885i3u7ipincoFEASBKj71JD+PocbQAGoNecaTYhNA?= =?us-ascii?Q?d+eqTmmeXLdltdgPSbz0Q3V3HjU=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 19118ed6-0fa5-4cc4-e83b-08dde632194b X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:00.5217 (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: OmCOfdfNQ+lgyA63OVFdWcM0tLwTuy6Dnd5yslo8HPX6wpaFsgxPzYsKunbIvFqGmU/8I4k+WrKRZNrtepnffGzh8i4vagHpJQwRVvZHTa4SlBkrcDHn45ff8IOGCwCL X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEVP281MB3430 Message-ID-Hash: MLEWEL7VUNXSEZHZICUL7NISXZ3WUFOM X-Message-ID-Hash: MLEWEL7VUNXSEZHZICUL7NISXZ3WUFOM 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: 1756385944263124100 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 30cfb22649..c64b2ba511 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*/, + 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.7.0 */ .domainAttachDeviceFlags =3D chDomainAttachDeviceFlags, /* 11.7.0 */ - + .domainDetachDevice =3D chDomainDetachDevice, /* 11.7.0 */ + .domainDetachDeviceFlags =3D chDomainDetachDeviceFlags, /* 11.7.0 */ }; =20 static virConnectDriver chConnectDriver =3D { --=20 2.50.1 From nobody Sun Sep 7 23:51:06 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=1756387627; cv=pass; d=zohomail.com; s=zohoarc; b=I2MVEclAwcDfXc4g5TTzR9Ll82FEUyzBAUJaok4mgWhfW+J6lTvpKT2TibMQPNwG3XH8oDTg/cMMb2JxFuw8BY96kLeHF5jrN+S1OrofVmnFd1MtSKHTloGNqQQ/HnqUz2HNBwzHFnALquKbVp295TOgbWMqlbvuafOwZpzMbR4= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756387627; 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=OpyKb6Kq6GMFZfMLIPE0lJOnELkLUypX2tl137/rLP0=; b=SnpByXOtjfluI0/9+pk9zZDPRqe8z5Nt86mPDpuDk+0zkYfk9gpTTJOAGz8xlIwFnXSXwkV93/efDC3S7tg5zfnq5WbdEZt0wocCMqwAdcJcUN2IgKPdSlB9c/RG6AvU1yl7Sk+T8hqdb5BNAi7/GdqwOHZG/iNC/9df14DWyTM= 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 1756387627134791.5454640778001; Thu, 28 Aug 2025 06:27:07 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 3782C440FB; Thu, 28 Aug 2025 09:27:06 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 28D8144092; Thu, 28 Aug 2025 08:57:11 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 7EF6E4410D; Thu, 28 Aug 2025 08:55:18 -0400 (EDT) Received: from FR4P281CU032.outbound.protection.outlook.com (mail-germanywestcentralazon11022129.outbound.protection.outlook.com [40.107.149.129]) (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 0D85444091 for ; Thu, 28 Aug 2025 08:55:10 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEVP281MB3430.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:91::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.16; Thu, 28 Aug 2025 12:55:02 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:02 +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=FOYaDM2NbdKG9ATnZ73ZFRCeC/IgLHTNd8ZzVjLF369YjC9GDBO84QFnAHSQIIi+VH9e/MhkfSjXm2q1QU8vPmYr2DJD9/capbUj1Lyc2pGspn8Bzu0KxwvIsiJgGWtI9pzURjeEA8e9kUForVyBsqh16YXdpy51Vm+pcOw7pwfHpYFYwMjXChbm+lxF8UEkkQABAdOmOkGrMihTaeu6JfcisyurNyhep2QYQc7ycYny16IGhZIW1aOoAWr+dEPt+zuxnwPRhkfZ7rAjgB9jORZ7+mO5tFHGE9r5JTOCowNZO8kaRc8rxbyoGf9L3TRVQDQ8E55uIMxw+w7cGpLuig== 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=OpyKb6Kq6GMFZfMLIPE0lJOnELkLUypX2tl137/rLP0=; b=CLjTmsDvJikCr7BCxQ0egkkEGRrk9teatsD2bqaSiNI3VMguPWMcQThVMRPQM8uRfctr9HyVMQmkLPJVMCVjedHWD4+ujL4ylKWim7RGXkXcyrdw5sAIxvd5eYN0jxeTuXus0IRlGuEdVEi/QQz77RnunaLRpYhZfDgJo3Ad9tuP1AwAiYPmIKMqq8sMmOslFdS9uj+f14NzSB0yw83/IogQ1N9QZFymNZjjtkiT7SR14wuJ7NUkneakWx8sHeTXnwSL7GDuPoDnTJ5QWFQlV+MH0G7/TsD4Dr3TCHWIGUX+/OXJrT9G67vzdbRaHKEuUs6NsNlSn9mkHMz7+cUzdA== 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=OpyKb6Kq6GMFZfMLIPE0lJOnELkLUypX2tl137/rLP0=; b=c0Wl74LPJKqVomAHYIdXlBVAofGaMPBNg3nTSMVocQWeCoFv8SJP5QFsN2D7ip+NQ0h73FcitHj5p5RwzV7J99oXogYKabuwKkgck49BKixkcpBTy4/t8yw2AjfANVJR5WqVgd/UDcPcSaerNtVAbvvfbOr0rMnSWyGPBip3IZJr90n8E2B1BPqdPVypytEb8mYPrETUDDHv+gJBxdy7vLviqR/Jt6Lrp1vDVDZyJ5aGP3+ar8M/tNuNcT0HJH+mQl3lebIG/SM0za47tZtC5G1lE3l31KoX9r1rbqV5N77JtJ/AJn6AOxLtxjqhvv5dGlEK5+VP8pGOO2/nFNyT8Q== 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 03/13] ch: add ch_hotplug.{h,c} files to CH build Date: Thu, 28 Aug 2025 14:54:43 +0200 Message-ID: <20250828125453.202358-4-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEVP281MB3430:EE_ X-MS-Office365-Filtering-Correlation-Id: 95e4d4b0-2030-458c-4a51-08dde6321987 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|10070799003|1800799024|13003099007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?wBcEHGqm7yGZREAqNVjVnMe+zucsT0osf970CD+o42VFuUd4c4WIO7MpgkAL?= =?us-ascii?Q?+Dgk7kHDNAURxEv/rnVjdn/vl8L0wQuF8ILBnSdxEXpiSLDWoBstQwaSXBkG?= =?us-ascii?Q?pzd+gbt9LS7XcQ/wAve5UKVIA8kTPKH3S18chaywJclbfDHnAVEMI/g7Dl4E?= =?us-ascii?Q?f8/MLEqsGYV3EobxBPWLWo9PDfne7nOjHF/Hlz58BSkjGb8H/JttTiQ+rK7I?= =?us-ascii?Q?h8BeLFJiYkoDKrrh3lFx5YJ8/AFAq65/GgugoZgKJnoUpdeQiOpK+IMpkLkh?= =?us-ascii?Q?2Dr7pOOeWGueAkk8cKKhZKIX5876HO+kZ/HlK/t1kpgjOJ4piKZIYzxHMHkx?= =?us-ascii?Q?NAHMBpQUjA0WJuvknwikEvqkEsDrDmB15mky9JBzp5Zr7srLDMokteYDBEFF?= =?us-ascii?Q?HkAmXc/Ru8mjNKabodPqhGysV1Q1omK4tYpsIYy3NbS6CG7k3FwJ7UcZMghu?= =?us-ascii?Q?Jl+A1zH4LCdGag/4ycjVDzO3c13E3kX73Pz9XsMmUhHgAL9jREqDO/NcP1Q8?= =?us-ascii?Q?wUKdO2wlOdqMtPeA1c0u+CLjPTERMUIUJ6gcbLNdEYQ6hLLSnlB2Ukp0rS4/?= =?us-ascii?Q?jq3njda4LYTJoJRS8u8u47S8rgIDxKgcoPWIziCRV9xaeBaCt9M1fLAhfIIj?= =?us-ascii?Q?Z1/jU6Ap5xB+6lE811OsMrE+j/1gc8Y29ySEoLwnzRpmEdlPWXbiWahq6TcC?= =?us-ascii?Q?eOR0l66AEvfL8lZqc8qZ2H5UjAuY0v9OUp3WjpZAYgJT6a/xii3Otvr6OLkM?= =?us-ascii?Q?++VtKMfnFhclzkWUNS0R3erp7F3Jb4GOcK2K+XihwKuF2gdy6HRsSpRmM8l6?= =?us-ascii?Q?IAuW+HJ9RDVU5xGa7xOinzO5c9FeYHV+C4botLIREKD7F4ogBG+z8XgZd+ph?= =?us-ascii?Q?fAjxxnK2hDOSU/8FvY7U3z2JmFIPSeMlEJJlpBHeR9VYitfYNrs2RzKh8ZyB?= =?us-ascii?Q?R0lQ4e+MwEIkmbYAgYyLj68vVXQGm8YbCretHCYuQ3iZ2Pt3Q0MIetdyRJuI?= =?us-ascii?Q?TtMn3jt4OUdlNYZZ/r9PlWZ+zDg0fgulvMIY0k1xdci29Nk/tu75Xae9IljG?= =?us-ascii?Q?7eHKq04m6OqljTYU5mzj/UD+cO3KYB1s6M86MrN7SPgiLWE27VMsYbWWDTuh?= =?us-ascii?Q?2GOxnaScElpGWrz4CiUA/3vJeKCRbKEVkT681w6OdM0m1o+3etGV8Qii4HvN?= =?us-ascii?Q?JntlraCdSRK/DzqN1vxbIvgluH7DwQOuvQ8sNYHTqqhTPi4zjOXHvfbS445t?= =?us-ascii?Q?Q7dXYAKSDEokq4jJ1wrgw45COXgjnFYR2xlJM1ctETZy3DXuLzAM+qq3rsPw?= =?us-ascii?Q?mKkuTDyWB0ZVMFYd3AeU1EUHUhBYpv2Vo/P5hw9shlE1FmLGBVfaJJAMR7Bp?= =?us-ascii?Q?w0UMxC+FBqYOvq8qqj/cKh8iwxsc8X6JZ+TkIxOsKiCwBJKFpeUC+DqlNQHr?= =?us-ascii?Q?ywuHZJtT04I=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)(366016)(376014)(10070799003)(1800799024)(13003099007);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?q53DR+SmN55TEbTcgkOjjFXgY2ytJ1iH3B/JI+fJVjCnZ8cuR4acGpB/qJIK?= =?us-ascii?Q?GEwEuUtYEuz91W/7BcfDFj4S1LMZzV/RG0XH9AhxmXs9aTbiKaV44j23s843?= =?us-ascii?Q?y+MqDVL5ulpQ0HrJiO8bt2Mb0BVvEYNZbhsye8ZT/6ekYdrf3kLjtbBxgD5N?= =?us-ascii?Q?48CSmV6QQQziobAgZL8mQjxvNsP/LQksFRvjZasj7ypEExULoLum5lA7kuUw?= =?us-ascii?Q?6GD0+6hdF3lHuj5AWxFFunZLdVLvCRo9H44neh2P8vwHJK/qmLdgRgDYWzr7?= =?us-ascii?Q?WhlFU2ziImHrJW62swfo089PD5c0Rz5q93GO4e9Et//wFIMnAyqdYNJVRdGI?= =?us-ascii?Q?Dkwe/4+f6ep4IKpe1JSn9cRJ87uxQNreHyBZprnPOOLC4kDIG3cmJVe7IHyl?= =?us-ascii?Q?q4WRqvyUAwcJISjO1zkYBWDOlnf32SLBkxQSTontYwi+d8S3mdmWsHymDfLb?= =?us-ascii?Q?maj7n4fXXrjkAUwxe+lTTgUWCBhW6zRBEyDTica/1knGW0qHhHu6ckKCHRsp?= =?us-ascii?Q?BqXE2vc7Upkbtw5lOpUZUGTWinBB/C/H627dpfDIp86QexSqN5ZQEHMCnTks?= =?us-ascii?Q?fQjXKM2O8o6N2A7r/lCwoqrZoFdDqH/DxeT2ZAo4iaJ1FDW1S8S8M+LYkwDo?= =?us-ascii?Q?Ggzt5f077AT6E2ZmXmCg9azRB3Nkd97nUTzq0X6jDIgrfhNWl93v8wHzTb4s?= =?us-ascii?Q?diC2vHxU01Ctvzk7rmMGFd09jXXQskVlaKH3NRJtDUmg2a89EUxs02Cg/lAd?= =?us-ascii?Q?sqLojLaiLGOjpyWjm3f89URJjFIIz4KbWvNnWJCfqD6Lv+OFJixM2diR8koR?= =?us-ascii?Q?n2z68BoDQKmGQeKbY0xvGn+oxi7ttlVwSUljXTol0dNTmp56YJBdztAc0m2S?= =?us-ascii?Q?3lTyIuD2KLQBZ0iVSLzxVfdM75CDJNW3vEbM/7yyHNDrIJ6HLw1orjf76stZ?= =?us-ascii?Q?ohL/RfccQ0wZqL5mi5JqCKJky6yYM1VU5l+LA196EsR1OGt93ixQc4DK8Mvj?= =?us-ascii?Q?cFOKkzAFlnbLQzXzDMQO2gtl/FUvKP4Ta1yFbMzVm46GPrvm27iOh0ZsVv8I?= =?us-ascii?Q?cl6bIKFemlMAd7eTIriQFTFZZEWN/49AFFW4Zgshb2g9hhbMdBeDkDRwj1Z+?= =?us-ascii?Q?TWdnb4MP2LEkthzlgwydvliC+UzRp1Dgdm4WqXojhwyIo4Twz9HyPD6x+Sc+?= =?us-ascii?Q?gPrDf+WBTxj9jUATSLnlVPFQ3ZLpfSQuGyrLaJ2fz1UgFIG941cvCn4WJBMo?= =?us-ascii?Q?hC5SKCVzbzmbmuYVNh5hqy2JXtLayEwRB393dTkoA6hde+xUi0lNnEarMvbE?= =?us-ascii?Q?imHBriXSI3s8KesM6QI2SA32H1gO+CrcIvCPwpyVx87/b+VeauAPC3PKrzwk?= =?us-ascii?Q?0Mi61znIxW1iFdzva3bJYahT2t3QyQkxEm+OGbqXP9oZc/7ae/r+VN8P1PWI?= =?us-ascii?Q?7wMErU8wi19Dhq2mVKqB22JeOCffq/RGBm462I2VgeJPZRwEWeSb1qkJ7f7M?= =?us-ascii?Q?+wIdFIL94mlGvpT1K+VRTuHW00Om+QO0PPrwhdFAPl/ywG9RKWe1a7kPRVKw?= =?us-ascii?Q?p5KM9Ux1jPgK56tjgziHbLbYfb8lQXHdEg0Qhd0Q+b4a7CeMvGQDMusaeCwI?= =?us-ascii?Q?5O/m5232UoSSxHX6LKNLBNxq5/PSZRmx9iTRGG+6hghTxCWItkBZs5tU2Zzs?= =?us-ascii?Q?GRHa/999IjELTgRZ41DlNIwJRQ8=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 95e4d4b0-2030-458c-4a51-08dde6321987 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:00.9873 (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: gT5b5t64cZBUCIvJ/GKXYp0FjxNmjBlaVOCYmF2Obi8q3ozIrpiPHYqIxweBdxJAdo7VwtLDpCNBoIip107IvYImyDPdp+uHkMgcb0C6W3Uv6pvOZVh+kL2RTmk+4kVw X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEVP281MB3430 Message-ID-Hash: A3Y23TGTIZNWY3ELXQVTFN6NY4FQEWDT X-Message-ID-Hash: A3Y23TGTIZNWY3ELXQVTFN6NY4FQEWDT 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: 1756387628147116600 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 --- po/POTFILES | 1 + src/ch/ch_hotplug.c | 35 +++++++++++++++++++++++++++++++++++ src/ch/ch_hotplug.h | 27 +++++++++++++++++++++++++++ src/ch/meson.build | 2 ++ 4 files changed, 65 insertions(+) create mode 100644 src/ch/ch_hotplug.c create mode 100644 src/ch/ch_hotplug.h 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 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:51:06 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=1756386117; cv=pass; d=zohomail.com; s=zohoarc; b=aPTTBta0wCYmf/rTwcSe6TRP36i2hCY6U6MqWGbtWnrsXPc/N6X/0fQfVe20z2x4bguQtFwQjFBJbvBA7g5c6aDQrjkU2T9Ird2hjx5QmIQ1zbDKOCimSo963QZeloJnIqAmjygQFOLfgTswB+cRErtEA/L+cb02YCK/ykq6oLQ= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756386117; 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=I/yYqMpqEAvHH4sJ1hy9ZeAE2r9eq/JDhwscs+xd9b8=; b=lustZIoIT/OhGzKBEuQouVgxys9a8rAm4ASLntaZOXx3CqFWm0/u9b7KyWf/EkKXz0l8uMpEMWfZZbEmrG40HQ+uX7N8ggHT58V/tIW5Yr9eYROB543EnW0n2t3wRzP+KFM9QcWSHlQTvAXQzShYDq3FCaOQ+96FRd4QF2iBF24= 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 1756386117010516.8363874109197; Thu, 28 Aug 2025 06:01:57 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 86BC94404C; Thu, 28 Aug 2025 09:01:55 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 64CEA440FD; Thu, 28 Aug 2025 08:55:44 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 7424C44092; Thu, 28 Aug 2025 08:55:13 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020113.outbound.protection.outlook.com [52.101.169.113]) (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 EEA414407F for ; Thu, 28 Aug 2025 08:55:07 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEVP281MB3430.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:91::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.16; Thu, 28 Aug 2025 12:55:03 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:02 +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=NNNdszbadq1KGyLyPkpvpioWvseHHFno13Oywu9bMAxw8g+g9QHHmj0+x9JZTCEIFUkKLfRARuTATa2omyTeSflSWlLbgS3aiUD7Vm7CEV3sabmZsJqL1XsWjoIuUcYAo5IL6Ov4GkF27fwlUuaKcAQDBo05rITfSagPLYPho3fokwNnc6jzWLEke4+UfS36rUYstA61j4c4GG124n3oV4rc/zSiGuQfyiBXlkE1i/QJWMqnS7X7ND41aBCEl5oW4rSi55P1D37A7Y0BOYjW3hyOMTFp1vbZpT14XSkw57od2026fDMHL9DUELkGLuB9/9Hdod5ocNf02agRaTwMXg== 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=I/yYqMpqEAvHH4sJ1hy9ZeAE2r9eq/JDhwscs+xd9b8=; b=OHkhulmQx5/yizfQRUYMi5H1OFQYNLM4XUt+6Pb05zftZGpjdnRA/xGqKsmG+fcqdX+xayhsMi6Me1nSvinCCUluppv7lf2Lac+F9HWXYMm2x/zOxmKrk7OTpN2+fgaeCWDraep+MNngZan+8Er9HpZ+wtbPWzzy9/PK9Bx3BGYZ0wpFeaR/aq8oMdMbcIUoNtr7WQOaxHFwqWjsbAvjZQiwmlUpdVTv0dtYl5OBV5hEsZfxe6vZn5xvQS159SfRnTFY4wZ81xpb6W9tS9O3DXwd5AScoUlr3JPlp/U0BsQ7HxPwujiDL605Pj6tB/vdQ075pK2qYLYZTlW/4GAWrQ== 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=I/yYqMpqEAvHH4sJ1hy9ZeAE2r9eq/JDhwscs+xd9b8=; b=fRBmIZKqFNz6cAEXsTNIQNov/AzlrA04RzhLmPG+Q6ppgCM9ILke47a0DGM/u1lbWFPGsaBQX0u89YrzKkfM0dl/f4JFX0UY8zdQbBnY8afPTmZgy9Mb3AIqdCqT/DhOim8eKT8U7Bap5p/CNm019SWMT/ccf9nAJFlAiFArN5Yl8N+stF6YAlSWhi9krqPg5kbst98ctFnrUD2ff1WK1Xp18k0X6+LQD1lsijNqlTlWnvWh3a/vGxIhLP0hQas0JvRfcksEG5EnEzSoJLF2EnWUnFi0OHMiqkW8lDYyqmY8TqoXZBRD14G8mBX/etZCx6wjkO5C6NpgglEh1dAdPw== 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 04/13] ch: call into ch_hotplug implementation Date: Thu, 28 Aug 2025 14:54:44 +0200 Message-ID: <20250828125453.202358-5-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEVP281MB3430:EE_ X-MS-Office365-Filtering-Correlation-Id: b3a995a1-0d7b-4813-6da5-08dde63219ce X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|10070799003|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?cAAaF7VEIRkfa9YvmJDNrwHyL0kkImvH1xl+rcKvenlbKOxLrKblkbQk9ocH?= =?us-ascii?Q?601pF4QQCOJ67aMv0rfWmRAmjHWPlOhnZ0/Tk9h88ru2WNbEhqQ17jJUYEo9?= =?us-ascii?Q?aYybES2/lW7N3Ol8VYGW6rGuBoeB64kCVppX03GeThpO57BGuFpdOz8aDaJI?= =?us-ascii?Q?SdReLEjaM3Xkt8gUZWmSi2rUl9h2Zzjt06E98m8TYRrVKA5IdKbU04BUwMPB?= =?us-ascii?Q?jPnxbgNZZnx0qVJNs+FbhPYvOaarh762E1NmUxApb7lEDPrgzojbGR3KToRZ?= =?us-ascii?Q?TaqiiHcAisPjuNRIKwuLWdh5PgRmLrEgk+9qN6ETMETOG1NmMOZMpXwoTJvC?= =?us-ascii?Q?fBCiKysUDP3uRyF0TtI+ZhAD/leFNOOqWr/fXacrs2F9lxTQOxVMKps0ueHR?= =?us-ascii?Q?IDS1MM1sk66NXKvzIt5GwrzIkCL+5s5uGYCKUolI4qoV9SmNoC6Xgybaonf0?= =?us-ascii?Q?X3/Xldve7xH3gReiXTUvueooq44gXANGFce2FXz33W+VUB25YLMgNBnVWjvG?= =?us-ascii?Q?MGbS9UNcliDdYYEZrC7yr1JKcTnxaazxyEQTb0ekgseGrl3KMEYw6vidx9kW?= =?us-ascii?Q?zAoFl3mTqvGfJFZKN3rMW+7L2broyDSRaiU5pW2z5+SkVQyp2y6FCA/rS9ME?= =?us-ascii?Q?Am9P4hbpfiXz2s4bWU2hucwtRL+UbyMvLHF3uXYpi3knm5A5nPClQV4X+Laj?= =?us-ascii?Q?3bOOVBAb8H8nmdptaPHxfKEPMV/AxxtUW6hAOdgBoDeTc0qdAlA/zWleYsul?= =?us-ascii?Q?GmtJR4ubDryn2Cn3CaMa4Lugxnad7oakIA9o0w6KDA3rbWtusRArgkYr3Zu6?= =?us-ascii?Q?gqMRAWMmnKHIU1y5QlgBQCjk39NI4FVKhOk7XEZmmesmtdAjrrb+KNmluQKL?= =?us-ascii?Q?bE+af+hfC1F2FZ5vWhSCzAggun/0Rwa+8I7BiLxDvXjsgSPxYx7Zw0/hLVXb?= =?us-ascii?Q?BI9vUGDoUOmGO1WRqG2gq7q1m6KZGE0sL4EqL/UMW9g4N92w9/JvGI+1M7yn?= =?us-ascii?Q?1KFK0BMQ2KF4Hqe6rxChkymAt9vhxFev2gRZ49GYmvvBAvHlpUSoc9T3C/gP?= =?us-ascii?Q?6Ghu2TtBpG8LO7XamkEUoGLS2UdZlYTdPhEoD76cEjI0j0QMqF3Q+TIHsvEi?= =?us-ascii?Q?+jmGvEx82bUY4tL6LTRfWAsRIU43RvwJJ2vSXgFObLu0Tx6uLIesly37uZIM?= =?us-ascii?Q?86mqHYiMCaXL4WKK7MfIASuT77uTPFcfUBQoWXL2MB98pUkrrNWtLOabMEHz?= =?us-ascii?Q?ebQIhyxOgQ+ZL0NW33/sANcuruFbdbWkVcgRVuO1qJABa85QUE2FMD2G/cFu?= =?us-ascii?Q?mmxgQPZGCdSuXYOPC3KFkJBXnJrXDmwMweZTQWY7OWhDJNfdZ2VPnrp79dun?= =?us-ascii?Q?rtf1l3OH7fd6781q6g9aKZip2uzluhfBQoQSJ02VBfTwDb1ATv2qzDypkG4n?= =?us-ascii?Q?C0SUjdAN18g=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)(366016)(376014)(10070799003)(1800799024);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?AOyYjVkMMWVuFeObNAClOo3UBdKV1tAsXXhiT9LtrJ4rxnnYsH2U/Ivh0U8W?= =?us-ascii?Q?BhgycX69g27P0FnxpW3G05byzxfp+09tHBOTV2be6ntWPOd+DeLTgpXbSIAi?= =?us-ascii?Q?ixQ6XdaptHJuTID/Vcd2aBok0Dm9ZGhnslaYTSGVP2SHHs/JAfBjci3hvDPi?= =?us-ascii?Q?xI5yQp5yC3BN3jOAn5QXwqrCypZQKeUSEtLaRmq5/epuoPG0DT+YPs/z8JYq?= =?us-ascii?Q?kfWkcCFQMHRKhQTx1ojU0Lxl3M2CppVDsxZsMjOU7TTqaOuBwbkRrGHG1kMe?= =?us-ascii?Q?4qcg/qyAUdEWzaw5T4Vhx/6rTkiZg07IoFpUn7OoCYG11WrfwhIp49b3f6RO?= =?us-ascii?Q?Xj2EMUZKC42Jn7nrh7GchW2QJ69MvUziK2TDJiv2F+MeYozYSaL/8khdjZkP?= =?us-ascii?Q?oD+pDxxi0CpASzAA3BlNWdjl/d17jYYwH0KWRnK8OjhBrCQOY05WOMOLdkeN?= =?us-ascii?Q?hCA94piZ6721nLRnhy2lZe4Vk5Fv+Ih83Sh1tc7Te+OgG6c6u5kwqVRWbQKl?= =?us-ascii?Q?Jez6Frkff5OYdk/twfInJbCxvb2eVOAn8Ahmx5Tvoe+b6GW0pODYefkH1Nny?= =?us-ascii?Q?rguonu7SuCbJYGlfGiucbOhN6B+mdi9mWe9ZA0Vo4AqaCHp7MexcIXkggiPH?= =?us-ascii?Q?N9qZbrPKIbdI0q0J3ZgkX4hccUK/qBNCSegHO/YXqvmfGK59viUlI/c2QhL8?= =?us-ascii?Q?F+7YQxv/Idc0OLpPBhbMald7ymTTRjik3LJ+PoTqU2lVTWmLoH1sj70BHXbT?= =?us-ascii?Q?eUQP+BBhtgo7AEoifd6PbmALtqhCZZSdkUafQhJuXl4b1yHdSYUAHYFSfXOr?= =?us-ascii?Q?BWL3bS9g7I8HxK+A0M4F1p7ACIFoDOayd3Si41gfzaDXA4bXr5NsxePtJqzY?= =?us-ascii?Q?Mw6DkFm8q/px35wijZKwc4qQ+87XTA7aonfQAdXWIyzRMuMkpQyFVDqAHHcw?= =?us-ascii?Q?y3Mw61EmAZIISUSQ/25Z7J8/VpHr4myDcb89z7DjBUdAPXu073lql8twdota?= =?us-ascii?Q?kIZgD7ziiXGOHxWDz2McXrnmUVT1a2jpOtl1aGa7JBIqLKpsRmVGxTeH0bVj?= =?us-ascii?Q?U7uz3DeWjDeAEW5FqZfHnT7chnSmqXDZlSHt3Dk8NBb1tyoC5f7hUD4Pr6DR?= =?us-ascii?Q?kv/fQKcKscbB2Vzfsms7sVzSqzTy9EoY476CyxqQldbvUNMdxEC3X/ZYCGSp?= =?us-ascii?Q?1vTKYaASj5l3ayY1i2CYP3vsolSFIQ/TA31qp/4uzzEwDhz5SezooJhMgO54?= =?us-ascii?Q?/weIK0qBeeBhw26rd9CmCjyztKcbowqbaGBERe1Vo4vQ5aNg4uJtmgeFz8Tv?= =?us-ascii?Q?+iMh1UcXKrnVN+mpl6ac+YcpIbMIoGJnniJzNHvemmeY+9vWJxq7ApJaaCK2?= =?us-ascii?Q?/RW+5AtTWGMQppAvSv0uCORPcQRXmRunU35xIVFEV32PuBkQoLDpm1MquF8F?= =?us-ascii?Q?W+VMOknyqGjg7H1JGRQEwhdKKC99XmUc6nRJ3hD4irx2vVQ4dF3wPLKX31xL?= =?us-ascii?Q?3TwmkYulNB95SbR1Wvp+6A2ouNGj+3sm+KqCa40zaq5Bwk05cN0WUqQQ5Dp/?= =?us-ascii?Q?qdzYOlHz3oYoV6cUAi/ubqbcEugNb8DtwuYgPC5HaDo2wipRmzzJuY4NAlxX?= =?us-ascii?Q?Tv7qtvYF7xw5KWEm3EA8A0lxQyp/c/D/aCfCmJMJcOjiskE/rKUo1Le7P7Nl?= =?us-ascii?Q?zboUmuqHx/OE1+sC0Sn2xQ0Ztzc=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: b3a995a1-0d7b-4813-6da5-08dde63219ce X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:01.3788 (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: XryEkpGz9NUwM14WZU6K91ZZAN4CpXcQlmN7lxrmVqHujZQ3wYgRyZWvnQ+z0Tyq2AGk9OPq4mc8lxvcGyQ0A+cGdSbEEcVe35Vd8/UDYqiTBDGNu6nucOtXiIjqu32y X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEVP281MB3430 Message-ID-Hash: G6SMFOBFDKQX3N434KOTENEAM72PWPEH X-Message-ID-Hash: G6SMFOBFDKQX3N434KOTENEAM72PWPEH 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: 1756386119520116600 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 c64b2ba511..39f9d934c0 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*/, + 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 (chDomainAttachDeviceLiveAndConfig(vm, driver, xml, flags) < 0) { + goto endjob; + } + + ret =3D 0; + endjob: virDomainObjEndJob(vm); =20 --=20 2.50.1 From nobody Sun Sep 7 23:51:06 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=1756386294; cv=pass; d=zohomail.com; s=zohoarc; b=KI7M5YPXHPNZ9WDXFcwhDGE2de0qoqMCZMieW57DXWbQL1q1+szpenBOKnBRXQ2Y3BIZ6pi8+i33+Fz8FDVIqYTkrLq4QSy4zTRzICXA6A+pbSzoSCiSKtcZdSvIg9kw5gtwYirTBGKK4rXrzqv9XTkidb5sc2LhjhP7qmduIsA= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756386294; 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=FUEySsixKWq5ArIVayFt7/5e0DOXgauXIbQasqzj4TBtr3qFLr2MYEEgv1KHSrSCbFqMsBWg9FgbvAPIDSObrKri8GbsDspsmJ3EUaPYY9tDLudKrME4ys3CYVJk6sCOUz8IxOI/erT8XDP0PgUMYYpSN35EkTGTWLal3CpWfso= 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 1756386293290489.1694872552373; Thu, 28 Aug 2025 06:04:53 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 6407B44172; Thu, 28 Aug 2025 09:04:52 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id C9CD5440BD; Thu, 28 Aug 2025 08:55:50 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id ED5EF440A2; Thu, 28 Aug 2025 08:55:13 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020113.outbound.protection.outlook.com [52.101.169.113]) (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 4080B4407E for ; Thu, 28 Aug 2025 08:55:08 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEVP281MB3430.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:91::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.16; Thu, 28 Aug 2025 12:55:03 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:03 +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=Xk2DeNzG6lxow0cozyslihpzqGH05Rx+bBHuFk9iXiLnpuBi/IZRXy0WCbq1ZFcc+8w+Z8B0ce8QtKlgrnUP0KmDaXYkqDdYwpLylUrpXDf/RPG+67V6v9T/qpMZkkuLwkoufwzG8U0BFxmzfak6OtsCXpsCG/ZOjFj8gmlnq5W0Xm3Co/Y+5v82QCWZai7G1z/4QmfMbPARSnRB2O6YDJ76Zd7jt0WiDXxTR2sv2J+xg2LHTb0NQgQ5r3havQPpdXVxXTUzQobn3WGGwvVT2tkDyRF/L7gyqHaiJsRKeC+fwFhF3UN8hH1IGwRLYh6Pumor6h0BKxqPZZ+NemFgjg== 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=LHiMYZp109SwfFkiMieC7fdGrtCoYyfIj1cnjw5xY2vs6AtSHL4nv5VABIXETtuMP7hum1mFNImG2JFBMo92LaGxKHigUtB5oflu9bPklwivVV2wVgEmA53SFM9UpRaJ9hH15AOG55BA6zAc3+Zt0AB9ns1H5G19/OZVDLbFp9TjqODFYJZnOMOlrq1DUup/R/P9SOiSQQroGYX8d+XVhnj7axy6IiQ4PKHPvPYbyi8JnvnoD0+Px0sPwvk/p4Jh9WDTwpgybm6SKvVV/ZgG+gRGV3zh7OSycJ6W/RT0MXDK1f75hTuEzGKel5EYdsZFfBruGAxgL9C3tSSjpcT0TQ== 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=c4M5Px66qXOcMia+JrRJuArwGiM82smOhMlz7+bcPRKsvlmvv9WUX9kjkWCDJnIwXB0DpTjAl1ItV1D8cnlCxy3RNhueSqgmjwSvwhHKUCr5yAmp2ZWCN5szo2q4Fr1EYwRbr5Cqyc5KZrBO4Li5WXo30yWxM4si06PmA6kD89firSJSEZu/8sPrVdYfWAbJq27gGU2Yvl8iW+8mIlQXooi1Z2gOJ9s02IB1ASI6iYpg7oITTCrb1Q1dQFv8THQNBJjgpH/t2NouZRz19/H6Kpla1OTq+Uk5m3PTmtAcXqiERmY8yYYfUZ4Lfk5jpjeTOG3yZoxMD7gkgRozpxn3yg== 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 05/13] ch: pass disk alias to CHV Date: Thu, 28 Aug 2025 14:54:45 +0200 Message-ID: <20250828125453.202358-6-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEVP281MB3430:EE_ X-MS-Office365-Filtering-Correlation-Id: adde8bed-80f7-43e7-1f79-08dde6321a11 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|10070799003|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?ExcTJOdupIDsV1RBQdNl0k6mKu8YKyKbZRSyfK3OgHx9HcS0ESWwMy99fjwl?= =?us-ascii?Q?Sww/e3BkJOwiIzZKNo7g8fNbqnLsI4Zg6Ft7Y7zVt1XuXeOsCtsY0yb8CjsI?= =?us-ascii?Q?0zacSvEq7jrJvFy98tUhDFZtjoBl2URJr4cZPgITDM754vhC+vxA0Qgrg5hH?= =?us-ascii?Q?1LMbMQCtSrxkJtMyVBOveqBjdKTiAFzP790WQhze/QYHqYd0WGXHcoQC+UWi?= =?us-ascii?Q?5NzvUeRLBIgi9dn3WaT+Ty+0O6S5qE6ycyQFgilIXaWBKHfWwmFXpb6iRaSr?= =?us-ascii?Q?Ald1SCaDtIzVKaj261qpXIyPfUQG9bmIaVhzn/XXEKINcn3Iq1qMi93Ei907?= =?us-ascii?Q?4mDXg+k12pRi61ciRdcOcvIM26ButmdER/bSf99WN1YT8RoRxbp/bCJKZKg+?= =?us-ascii?Q?6f7Fu3jEs795eQQ2KRLxyDXPIPilPIA/GhYPqPQ4hh5/2mHqgRf+tjfSxpCr?= =?us-ascii?Q?yIglop0CwHvXyoArUHN/j8JawRf9Q1k+l89ac5emCySUVlEhwsXPVGq09fVx?= =?us-ascii?Q?VfH/TcwSmAsuQf2Pi6sFb9ktyMLR9AJAlgEKc+ODAouP+JvbeEujLRSo6tP0?= =?us-ascii?Q?XBSaMNfjZrzVKkAgkcyb6kDJLow9ozZMS4t3OdSojGLrwg6L9TQSF9YpgvLc?= =?us-ascii?Q?gYfbzpn3xh+a3vhTc3GBth2MLLdaju/635W5EgXl0eosjEhwgnKqaK4aPMhZ?= =?us-ascii?Q?Tds/ohjvHH/LIj6cUp9xQ2mfDpU7afbyY6p8XABvwWAtsIybfebo5KjQavlJ?= =?us-ascii?Q?9nWe+cAz/BpVf/IdbmpkotfFF4/mpGKmadPKngN2EDh4UBYGN6rAGspHXZmh?= =?us-ascii?Q?W6WF4YfkrrInrkGYv00jp5RAPuf8409gebKChOq2xrkUEChCJrqHzipkOhv1?= =?us-ascii?Q?GzlmFEHJeDGv2IDCnton+IJdMVP0UGtID/eMP1QguIv9EaT3Z0n2j9VCBnbh?= =?us-ascii?Q?XGf2GgHhrXqNrrGL2qysl4sXbgvoAepl3x0K73emS/UyYSjaTsag5qWWG14i?= =?us-ascii?Q?uz/47IvMo34B7HUfw+ZAuHdvqzJaKbuPXEsuW5nIjFkLRKzueF0SOH4CKKXR?= =?us-ascii?Q?QSLGBlXXbL8G+VS0TbJwdD9THQNIj2Do8ielY0t8AhAmx+nXWFGpT9ZkoHvL?= =?us-ascii?Q?9IIGaX32GFAkOezR4a7s8euM6rC36RVbPNHds9Tmy5w5pxt/W+1tnHFZfW1H?= =?us-ascii?Q?/AoKb1x7ai8AyWHgAqcbC2Hcj5eMh9xDtNlbwrXt4cxlrIYvpDP1SHl3pmGB?= =?us-ascii?Q?ETsHTgmQgz51XL7meOSEiTxHHsxbXK55LeUBU4aaAUFwp3esyg7nHABMKCX/?= =?us-ascii?Q?vw8Ql9WJwe3tJVg7hRO/ui5d1h9s1Z6YxM948HPQsZvUAS/8Vov/o4KNsL6P?= =?us-ascii?Q?rh0oD30OL327nluZohbaBeYgzTwGAPqtpA3xO9nbo+g+wSnuy7PlbCa245Uf?= =?us-ascii?Q?KnpmUPid0d0=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)(366016)(376014)(10070799003)(1800799024);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?RPMlpwQw/tTPwrVMQPlCLY6O7p09tpQElJoX1bcUdW2U/59jnDOIemSc0drl?= =?us-ascii?Q?Ase6ydunV9TKUgVrqQA4+ulwsabry71CbjJn3EUJN5+9j7W0NEiuVE1IujEQ?= =?us-ascii?Q?eNxRAO2SMwyN/eS3/NmvpZL/wDcHHnNz0TLZC6pDk6ARIMwFGmWnMGq9pL0V?= =?us-ascii?Q?WvBAWSvWqu/34ej7gu+fKI1t2D9P13tcfrfXaVV8aoZXJXWXDJR8EHPYhWvD?= =?us-ascii?Q?3wG+E/PrGYwt4FjqRCgPXUGldl04gFePLfo/98JWAfylg4bkc76cvwMbqxkY?= =?us-ascii?Q?bV53YZx3y7gwQ4CO+cYaRGwTM0kyBHbX50o1yoPDHMPbFIgwIfP7dw7yjHJF?= =?us-ascii?Q?anHDA8zZeKfXLEs6XAYIpcqXOIUlMjsHDLpvgsjTVqFCXdvSmRAoC4kDZkl2?= =?us-ascii?Q?GvfMPU8ClAxoaBQsJyRe7RWVIh2PoZsup2zati1PTW7/GZUboIHdDgPbWIbh?= =?us-ascii?Q?fqG+HgkvcNpTpnOwAn0EQ1IyGzO10rvWJUbMpX7ZtKerq7sgVNGbRbXh/dFZ?= =?us-ascii?Q?TnRIgLcw4yLShruW/09kSQaA7CwWiv8v20adv33x7aKRhkbUris5L4FCQpld?= =?us-ascii?Q?9Nae7Y7kqi0L+ISpX9cKR6W/SJEiBHr8Ao2vKTo0Pvqt8TDKtC7simzxxTZl?= =?us-ascii?Q?nR6GruAMcdT7u7xyvBV9Ssn4pnXgGbw8SSKYqVVwLXpNi8z2nBZaRxdgxJuM?= =?us-ascii?Q?1Y8/xRtftsfqLi5V5ZZC6UVmKKrBQWNgsQuagZCDfiskxPs99OIpWKoM2Pqb?= =?us-ascii?Q?qnBr5wdRCLv5pvqHpOeVJS/95PG+dh3gozbRttZd9lJ38RoVWLOpzE8pkyDp?= =?us-ascii?Q?T13O21Zdf5AYx/ZWRNmF5qQDhJk9TciLnnG+0UOhbPfjo33H/IViJ0o+yS1+?= =?us-ascii?Q?27DK/iC+lFeZIjT9Gobp/VrZp8YaiMaDKvUSloc3e7pRbSoGpOOiRmvXqdHu?= =?us-ascii?Q?uxb73Hfz4U1JaMm32trn9RmD0oPFEM19LHrOHCtRkTjude+QiUcHN2lP3Wlk?= =?us-ascii?Q?aAae+s1HUj0aEUnZISKbskq1NdRCoptGAv5BpJ5OReEYV2Pp4ajDk3mBAiRs?= =?us-ascii?Q?6QaEjMVzTRfeGaOumUuG+govF5k59+4gCUirBwgLupwfiv/7TK6H1cjubZ4z?= =?us-ascii?Q?u5izdtwTfWGs1cnSDWJQ+FHxal3tIdazbfBQdpudcvAuNmsDNSUqroMjEI/p?= =?us-ascii?Q?U6OM671zfuCKHpfOaQEfq+jUlIHNOrN1skj0n08szWaAN1KYrOXJiHPdVUnn?= =?us-ascii?Q?imLsDuuK2ooHoFD4bPPMupDvWdbd7/ZQrq+oFwdHlHmbWm4q2XxPI63t3jwW?= =?us-ascii?Q?gaGUaALSAgj9IQFEuTLJfPlIVWJ0uu+qa8YLgmvW69HApVL2Y4nAiMcxnvqp?= =?us-ascii?Q?KFwsFuo4Hk4u9LPawgOHT/7QXokQXpypnmKu6N9Jzg4ZIHFfxgXWDpUY81Dd?= =?us-ascii?Q?YeLyIK6HXaIOXwdyL3T73OA6jqW1t2weZSo491C4h1+3qe6wtplb+jwBj2rp?= =?us-ascii?Q?sXlCIeMbbo7iWTPADZHVnuwbGxgwsXeKoGIejoyXzTxUjlYbQ3N/8WTxyP2Q?= =?us-ascii?Q?qoiZe6PdcES2HXNS5qggyEF7Qmc1cnz5gZNr9GB1ZtKDEBs7C1/djwIYZM4L?= =?us-ascii?Q?lBESu7qaQtNtRySf+5yX21Ygmf8UAy5dLnV8/lC15TidYJ4qELcEBWoDZEbe?= =?us-ascii?Q?Hq6aD3CD7RlgNK1vJo/jx/tkSmo=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: adde8bed-80f7-43e7-1f79-08dde6321a11 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:01.7863 (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: hpdiAUkF3m+l2iMiQRJaKnb0s0MQLq7HtbwI6MixdwdrsZYNsOTe9wNvlb6RHLKsbl1eWbNbdUXbqLKXr5jFAfeZ689kxC6nVnDumkfprE1EmFUwOzidofj4XNG7pnt/ X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEVP281MB3430 Message-ID-Hash: G3IOTF4KHC74V3BIDVBYHRTBHYPDRIX7 X-Message-ID-Hash: G3IOTF4KHC74V3BIDVBYHRTBHYPDRIX7 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: 1756386294892116600 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:51:06 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=1756386494; cv=pass; d=zohomail.com; s=zohoarc; b=HH01quaVppSuaJqH7qaZyGmXqj7fJ0wnv22FzX6OeUrXdf8JX4S5ZnpaELqZRaqCVC1xRg3tcA8XqZR7+ydL0MSVcA3PcRZxk+jUvZF9Zu7/v2svWrOAAWSs/We3SUFvRspm3wjLfhn1MjdvseBGDBV/A+w6oqZ9sroVI4XJtjs= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756386494; 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=VRFm5COoEgnGeax2+oCy6Hq4jx1yyk6pmPSFPmfTyX/6XuO88P48DohrA+TkntiOTysTxPauWMozf+iWBDFNc5H0QLphXUEDWgZCCcyJbpLREukXhPOIMfEi6SUkYsoxtmJlEhM0IhNPO6/OpFJ8BxSVQgRubxfaMv0mgBBRZNA= 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 1756386494581843.063242173002; Thu, 28 Aug 2025 06:08:14 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 9631F44161; Thu, 28 Aug 2025 09:08:13 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 68D45440F9; Thu, 28 Aug 2025 08:55:59 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 1423044094; Thu, 28 Aug 2025 08:55:14 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020113.outbound.protection.outlook.com [52.101.169.113]) (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 81B6144089 for ; Thu, 28 Aug 2025 08:55:08 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEVP281MB3430.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:91::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.16; Thu, 28 Aug 2025 12:55:04 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:04 +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=TcdDImUgwyfDY51bMeO71PVwkcJG0rSW8Dj32vDu59qQZNdTRDOoNxRXkktchsJcpMQp7ZzVrlF22AfjvqeiOhWdlmZhFwEbjaEy/URWmLtHK/Jeg2g36GwZGy/m841l7+JNpjAQvBk2w/LeBMiHXbOaj2mTWXzxGut9z4WNsiKveH5JUVSCM9IWj/kY+/GKahWahrZE+QiwgabY1F4pHuIxxO4wb3XJelUIQsNvWD0Ic0NV+t+WAuBJUjEgul7kaRpyBLoXaxUI3G0xSbgnGW2Zkos7qq+ZhAxqm0DUIv5s1cGHnfoTNQauq1KD8ZJF78MZ+LJoVOLFGjifHLzv5A== 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=STYd5GCM69UDh9VraYVCp2k+YeQSMsqJQ+WwvsoNkHE+dOop16ergfK/34hSrjoOEMg5GoOYcwMkzsVWRCPeK/opUdwt4WAJWmT36b6Qe8m7wVoAchj8CtzqNCzD+z3ZrSAdi/OGXzvDZn+NjVYSSzmhscQD5YhcHlDp1J9L70lsjBxWPqX88MIzFN1mYUg98jkw3cDCqNKeena5Iw37TaFZ1NGqDchoxHgTsjKJ5GS98FbDh5w+Y12UfloICgm0PWYyrcGwuKIZi5ngsJ3Vu3ieC60BxMBanQnqafYIbtUc/FzwHkifJ52HgT7qTKHV3TZj24m4hlDxFLsMueu1Qg== 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=DncTQ7k2TItsPxRCV1BBuYrJ86vFVWnw2jW0+ukWMytaFb5W7k51NJUX0TbVB9+nlKddu9Stre0KdA029xh8zqp6u15J1722q736a9a/GQKSwQPBJJtOJx6qlaBOWLxwvsgiPYaIrpT6L6mZ8jOs7DLmcqNjg+JtLR/h8nVko6Tg7W860S2VZoNHL+OQOW01RmobGihBziQMh9vZz6h3ET5gdJV3tPsKr0Ltm4pGOBdKSkD95Z0Z0LD/Vw+B6kKTG0YAeLZNuv0aaNO+eunQ5IriKv+DTbnToCD+igLU00/AZzvcvcwM4jnKTojUIY0tOmnWdMibpJyLkTHwFE4Qqg== 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 06/13] ch: add ch_alias.{c,h} for device alias handling Date: Thu, 28 Aug 2025 14:54:46 +0200 Message-ID: <20250828125453.202358-7-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEVP281MB3430:EE_ X-MS-Office365-Filtering-Correlation-Id: 47e80545-9999-4afa-f981-08dde6321a4a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|10070799003|1800799024|13003099007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?XPXJm4tYAiEyGGi8ftQQ9snBdraEkpmYYxEmg9YT36UbafwS0somc5eZGYj/?= =?us-ascii?Q?oAO1RuuG4GWd3xSp/lP5AGpvbMROIOdjo1JqptS61cpQRo2PHu1ZQyRq+q7c?= =?us-ascii?Q?w2c6EV3CUq9h5FUZ4v68K90HeGE9je0E0b7ky59PVJZdtiAxOeU9KFyeSqal?= =?us-ascii?Q?1ji9gfrIKgxwLtw+yZTnDyhsPLLA5H+8G5clyVHpOn8z1ZAmdevJvOhxkCEd?= =?us-ascii?Q?vZlM1j/F4jvoqzYn513rzpOk5tAljxSjNUMcey7FuucUnyLbLO6CtkGcoB8H?= =?us-ascii?Q?av7o8X0P1g2RSwfJT2ig4G07RgKeSx07bUmEGgGjPuyIn3Us8jA7W8GTSq+a?= =?us-ascii?Q?IFmwkPbvd30cffwrIsQ7hZAjBB4vyucqTRS5HN6fbGO7Nsq45qj7Cbv3w72J?= =?us-ascii?Q?MAF5B/yckUwwtzHt47OYMjlHuFaYK/TIR8e0F0EVrJfSfof81yNqkhJDUv0d?= =?us-ascii?Q?Qk7Z8J0aOvOqXomSiKK1zHjtqXS2lxATw/yi5AfWHcZaqqFaDczyTmCkGqIL?= =?us-ascii?Q?ZVU4gvKytx/vav6sif168xRQBT4j/3FmKa5+AdvBVX7qqKQom9RvEsGQqnLh?= =?us-ascii?Q?fZtS1VfnkSR3hHTGwwUXH0tBaQtIgBeUDvp2rlfaUOQ/QlcLI+yed0LcTaS+?= =?us-ascii?Q?+hdzWtHpkFqvNGC2fV6y1/KRIj+DoxKu7H8rYU8OoIBm9mD3xC4sjwkCQKKn?= =?us-ascii?Q?Gup9QKy2AoKgHeLS3wqAjMhpn3+dC9sxpR71gKpjpMF7BBX7N5N+enpv9AfH?= =?us-ascii?Q?+zQzP6Z90kf34J+pimuiXZ1eFd4VMVnSlkZ4wdSlKXWV3S/h8aAP2mK7PAKA?= =?us-ascii?Q?S7NGQ0vsejDGv20gJWeYE/uCcMlRDZbD6sa5AIpDFI0UIx9vMopqGuRLgLXY?= =?us-ascii?Q?xKw2J23O34oQPjdJ/QtrEkuYHjufZXvkEi4uqNMao1HwOKoCDUWLUL3IgsSX?= =?us-ascii?Q?hX9NVpSzhzi84F0sccVjFj/Cm7MqflXWOjak9EHUxeHNvEMj91rXYBxc22j8?= =?us-ascii?Q?gt8vU/YJUHCWHYBCthD5vrVN0/9xFjizbs9+UhSVy8tZ+7IsmveGsCi1hbOK?= =?us-ascii?Q?6obrYDtMIxzQPmBXrzpQ3uO7S9bZKNoRw2UVrvPMFXctZI4hfYKHHOidopxL?= =?us-ascii?Q?kkfaVY/cMUnrzAO5gpkKVGT10YXza0bCAfrDW9xnwcmdixYfrMsilLcCjv+h?= =?us-ascii?Q?10o5XC5j+XxIouoDCKjAQEEz8GFbmgT5pih+lRO+2Yh54L2gMpfOmwup7vcJ?= =?us-ascii?Q?cOH+/FXWrQJCib6+ztgQytrxoKp2RLEvjO6xvBWJX4VJL5eHmmLNhhQj9HE+?= =?us-ascii?Q?j9GM9j55scx18kFfbOrUmwrI2csYXIZXO5IzzlR9ryYNbjqF4MUIGcM4iIVn?= =?us-ascii?Q?qQb+109TEViTufhkmOzmc9Xoqfw3WsE0650J96aBtHmV8t/I6Bluh/JBj8di?= =?us-ascii?Q?Qj0UxxBXYe4=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)(366016)(376014)(10070799003)(1800799024)(13003099007);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?owDoVoy4P+KQE6MUD5CkyrdkbyBSfv20RR8KaSRcRXiT6xDoeocAY+7pTM6z?= =?us-ascii?Q?i1M8J2+ee3WiJnSs2Dx8PD+qiX3ZvgMIAkVBNvZql35ap/jrMx7erp2W3V67?= =?us-ascii?Q?mtyvw7NpHp5xlZadtAjvZP3ZG0+Mk5G9fBr8hn9pbf5GLwkN1MOcfy7Th8tZ?= =?us-ascii?Q?IF+9DciUerpyRPpFtk5sh4U4xtQ4mQjgrCpQ1sC9eK5MOGScGb93cuDkyjtI?= =?us-ascii?Q?PuxJgGkJOXjk8rZQMBfZyM/b/EWPr3vIFITr1hX3EBisKNOeyuTFomxMMgwZ?= =?us-ascii?Q?zkxx7l1xApGJ05p/B4cMACnXWHisLfPfX6BdQ6dbdHFhA3z9y0lahH2ict20?= =?us-ascii?Q?PjLCFhEutWJNTeWMG36453VHh7yYh9QKs+EXn0n3WwXogxb6uzJwCmIOq68T?= =?us-ascii?Q?4xzYwMSR+zPbuZbLvp7qBnTYX4vNHCWrhbX2m9JBZZm0urcyMf4CGELt4Oj7?= =?us-ascii?Q?QsVGcS0laEhAdynNBL5cOfzUIIOSZCahrlZ8vxC4xc5R1yIqk0V3ZCPknAPg?= =?us-ascii?Q?c/i7zOVsTFHH7q2/njuV3ApvOlqaxKTRUHRtd+GMjo0R2oPKb6/yKGWA2H5X?= =?us-ascii?Q?xgkKdQqp2YE8x4xP+t1e+nnVbIvRQqUyAfAynHsRA6xgaYYsPqXnBEAAjQ8i?= =?us-ascii?Q?C9BCpRmXFX+Y9rLJUfXaMBx1EUXbr3WWQFiawD5sAH0Nj092W3n0JZEAc5cf?= =?us-ascii?Q?lWZWhuS+zhSlayGa+e3Y20IFG1HTVp1ewd6eq5k6GBmTGDaG+4rjRuCbXQUC?= =?us-ascii?Q?WXrARJFmzmUqovwIAB2TgcQKHZaWqnaSwwHiIQjrG73f2Nx/1TsADE1xIuuC?= =?us-ascii?Q?Jlm/NSi6Hyf+XFEezMaCBbO+bex8UbjJalWlLJU4yo2A8O36N1kaxfJb3BVM?= =?us-ascii?Q?BrJjS8kziIMsmgRuJ0Hbk0SU476Tp4ayOBgcwTY4rvXRnPiu2gRTK8CDxh09?= =?us-ascii?Q?bial/DgbxazjLIwoQFfHWHZH1pQGNBbu7p1u3JimhUksj9seoPbjYrB2csBN?= =?us-ascii?Q?HU1Wltzx6rKz9IxBeumiLJXZmdgK5ME8djUuLCZ0dHO+Lqv5p87sJOh+cqEx?= =?us-ascii?Q?GQJXhfSfjxd/IpB8aUbZXdd+KWnnaPqGeQS460LlRaH7wyfFZva7q7kp16l1?= =?us-ascii?Q?OjOmROG7zCaLwCh031YM2IpYeewcZhvGodjACF/gh0R+nI6DWQpIXY0fqcSR?= =?us-ascii?Q?BPPnoU46cRhsKf84mFRjeYVE1pq+hs4/XD+6cRQyu1Zer+l20RzZ0rbpdSLd?= =?us-ascii?Q?9NbIndk4BQkowCn9vWe+9TEHN6ApSTltgrfLoUZp4KiuiZ5NynJhwOpcS/gz?= =?us-ascii?Q?bXTnIIhnv1xPrGlVKUuaZQkOoQ+5dnCAwrMDWCEPW9t3IkhZPG37GqNKTLJC?= =?us-ascii?Q?LqY7fS1SXQCv32f3fcbkAmIIJw75lVbqTuMwBQw+fq1MkageTbqK0F7lOb55?= =?us-ascii?Q?n7ZNM1bv8I7FpsGAf3+mRKdJ4NH31WYWWuFQ4tZBYC600u/X9E38HILu8kJP?= =?us-ascii?Q?qS3WAb2p2mjPgaIaJeSEqb7AySikep3d803j2q14SJv0x7/PMhkLNogHgyt1?= =?us-ascii?Q?rmixhGR/zaMKrjN4PAJQOePcAPQf1grpl8xjODmYdioLLMT7YIJ0/uuKQvKd?= =?us-ascii?Q?wrbLrxxKFwiDi31kbwg1pA9LDfxTLLYdPv4wwxSRaFLeVK+SdhrJ/LGuwt8J?= =?us-ascii?Q?6fxbDg5tMyexqEWBlB15Y3Kj0cI=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 47e80545-9999-4afa-f981-08dde6321a4a X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:02.1801 (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: 1Z/e/90/+G3j+z/HSq7ukeKcU3I9EZAPX93PTykze+Sb11Xcby4KmnFbfOmzn/r2wYJUsgOZKQbbr536POjrVohoSJakgU2x9d2/XyP9pmHKBPmsiP44wdU5aG3tn6sy X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEVP281MB3430 Message-ID-Hash: WHFYPVEQCKXGDRKGLONSSOGLRCFPCRKQ X-Message-ID-Hash: WHFYPVEQCKXGDRKGLONSSOGLRCFPCRKQ 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: 1756386495571116600 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:51:06 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=1756386652; cv=pass; d=zohomail.com; s=zohoarc; b=S2LKiB2YMwD4lK1ZXCcNaZHvLoAXbDUlfF7wOgYIpVRmlHi00FevzQkr+MhX/usTuQhVbY9hpKvjJkaUfe2bvv4YrNpBjdlJtF3m3227A4yQUUHcrJgY4a5JT5dEOqMwoFMMilb3OSJUgRsGA8eGC07SBhVYkPDC9QwhfklHMpk= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756386652; 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=U1he/1elppxhOFuq2fUlwjdsbjXLwt5B8yAUm3knE3hGLFrTM7+dFshGZxwiJojnCnpYLqroUAVjLbqi2cVUvAFH7pKPWyjLBgJ2+mPlCjVA7fC35j5/CywvY9YdbV+XIwfskXMGEnkg3iemgAvE5wGmQYtbdi++0GkdXYIsp3k= 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 1756386652771831.2658290170857; Thu, 28 Aug 2025 06:10:52 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 2C56244120; Thu, 28 Aug 2025 09:10:52 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id F20C6442B1; Thu, 28 Aug 2025 08:56:06 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 5F63B44094; Thu, 28 Aug 2025 08:55:14 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020113.outbound.protection.outlook.com [52.101.169.113]) (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 C51704408B for ; Thu, 28 Aug 2025 08:55:08 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEVP281MB3430.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:91::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.16; Thu, 28 Aug 2025 12:55:04 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:04 +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=hgMHW/Veimdo4xg6ZiIq22FT0qh0h4YjarHtRdMxapipG5n5sVPXYSzvn8y0p6TCnJ83Ix0Suf3NBSdwNjGiNdTRUEH1MnSsad9jr9WuEYmX71WTkwqz0yPeyLtR3X5DzeEmvoIjzViuistdOEMy14Djfj6ATl+invyMd2Wo3ymF290AdSZwjtUiznhefoJAaXOHbnDzejZrMgLTzxtOcqog9UpuqkyoabsgisfKqA8FdBzuPk5ZFy5YozLevI0Hs+iMYCAXBOGyYhZDW11iaMj0B0zxW7A3pw4QFWjTSdstPmsec3NBux1DLUDXs2fpuPeOQGNE3HRhFmCGfGwPCw== 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=aBoIX122FtVw5tMtkBvjqGsB3Df2tarni3emPWcKYRNovp8ygNsb5DlwTggu7N+rSwcemZak5ZfvJE1f4o9LUP8op8BRKcrxBTUts8P9eXS4uLo1ZKkhVxSSdAOAz/yp8XSqKLP3A0uB2l8wrriAAxVgffjbWHo/KucrKTtRd6+lCHp9okg8gjv8NcFHl8CiVBQsi8JC2ET950fAx1d0eIkAv2ARpKVeE2kItPecyUjKUfnt3wNz0TGdeAs+OA2DW8VGdq6vQ9/SdPmdFsrVBZR3lmF0+2xvpTKv9n4pPyGL3Sex2DHaogKKYZ1fu+Ekten3/wL7zIkVCoXSOms/vw== 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=i8eKaoV5HtmqYUg7B7YGFb+0sAipcX0Q74EtA97t11okRLPixgFSgpf3F9PcVkhChLPr8bFrxpqW3uvfjXJJSrlFl9E/uJUv+GNFfCC6hI4KSHPEfxdSji6d7CyNk57a7RKSn2ZoEfguE7B3lQF/dIM+z0AlpCHWEl3yt+u7ENn9p6WhStjKyx+YQk82eSG7YqaD1Voq79Yo8Sy/LFOGFqzG/osH+onBxjEyyvZ7mNj1rBG1UR5hfFZDN52VlZad3tAdesiiVwxdGqvjYF4MpALP/voNNcxno714uDFUhCVVCOGL57HoMhljFKTHCg6vU0ZPuE+FtYEqhFPw0bRS8A== 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 07/13] ch: add virCHMonitorPut function Date: Thu, 28 Aug 2025 14:54:47 +0200 Message-ID: <20250828125453.202358-8-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEVP281MB3430:EE_ X-MS-Office365-Filtering-Correlation-Id: e8e0ea40-604b-493f-dac3-08dde6321a83 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|10070799003|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?HnDHjjpFBy6sFuSPYRYD4RZ4nYxs1e7XSJLvQBV2+XlsYJSMNRe9J0RLPAzO?= =?us-ascii?Q?+lBX1eVGGUzp6eaOYSRX2tzn+hJZ1xZZCR23A0GCcdDOvMXWWY6poApdUMSc?= =?us-ascii?Q?+kfr/OFPcjIv0hq2mNiMPFx4RIS5OSh4sSL94Fjpb+vYghbwXyxyeZ9G5OBh?= =?us-ascii?Q?PS3+6r9r4U5cR8rbs1kodxAF3CQ/j3QbGrFdvjfmmA4uzt0vbfTrZckRna/U?= =?us-ascii?Q?XdAaogGt15GY6aR7c0Mkcje3T3tqug2oKcq89Ipbnvsm5sW0XTt4DhPQxc9u?= =?us-ascii?Q?eJI8ZlOq39NNFtaTKxP6aAiMzW5QZ9nVyOfpWE1+5SC3zk9fL2zhjTIbEgwb?= =?us-ascii?Q?k1kft8cS8g0OWPBxg0Kq8x+/gqOARaR63C2dTIk8IPyZYEdwVDEXtzSV9m3q?= =?us-ascii?Q?Stj7X5dLZdzA1RS8In+mOOBeMjZ9+OXVBYsM71hRYFEFMaNwrTP63efjGodq?= =?us-ascii?Q?Y8nGpwWrCg7twJ+QoaElTF8gx+a+iqxh4oz6CdFYsui++F7S1RfBHLYyDRHA?= =?us-ascii?Q?T71ow3SVwXwel6+7LQ4ctgYIK79CzTac/cK/pqavn8Rtg7cpRxzoQ0LF3J1p?= =?us-ascii?Q?CDgTx0rcizZIyY119QeklmujApTf5+fc0eBDnYiqJ2uK2f0L78kEPG1GPkWl?= =?us-ascii?Q?VaTHzIMJY2vC/o+xYALPIufvaJEpSRyJKUJb7uHkQbmuhFklW9CfJJU3ynI3?= =?us-ascii?Q?15SIAknaR56m5qn2DLr+mrqqBwt2/xd5jYni6inVezRzg9heYl+mlXSYVrNR?= =?us-ascii?Q?+hno5rK3/v8xCPdW2EtNA6QBA6e1/QQ/Arb5kIMeKUm341j0zXcnae4jzyNT?= =?us-ascii?Q?hJTXf7CbefHUrUBFPDDOpoX54frR38cKJVqQE1Btay2sF6qlPZ3CEySOj0O/?= =?us-ascii?Q?hNZqKOoxO9IHnfhb/sH4lTII/c5OZxSQMsH7HQsOw9zDWYZo4yHnEy+YGnVy?= =?us-ascii?Q?6EPNxhJtHiiar1xgJgU5NxEGcuW2EAUWRVlFDEOrdWBkY1A8TjrrTrz0a6v+?= =?us-ascii?Q?8+Rt26OVrT1/co2IqAxkwSHxDfc6iX+5JYYXknQpqZ06o9CDnDDXa9B6L6YF?= =?us-ascii?Q?HyNO/f7wv4aQtI/v7HMAYZKUYzEYGBxAQHdRJoqgjlnWWcxkPn7zo80EJVcE?= =?us-ascii?Q?wfV1+4dfUXlXmJaRyS7Uhksz/DaXxz1noDmCI3HbUA/DNLapg5bdVqgTQQUn?= =?us-ascii?Q?9AxgsEEdW7UbVFMwiIUdCexKIIodQWRZbsp/YKrDUC/9fnG5KQM98UGnVACG?= =?us-ascii?Q?b4bT4miMOvOLyRdyG/Kai83JPa9Ro4JSvfiEd08KLO9Xjk2A24xKHl7P9R33?= =?us-ascii?Q?1x9sFNUgBII0A0Jwut1j/+6z7DwupKSFCQ/GH0eqV3SzF9bOHDVqgQLjv7mh?= =?us-ascii?Q?QDFeO7OEAg04lY4BP6Rv7sIyz1iHDCxWYv2V8dUflMxh6iLkf2IyNxfdTODC?= =?us-ascii?Q?9BVrSIryZnE=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)(366016)(376014)(10070799003)(1800799024);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?5qZtv/gm6nDqBOq0nV8SkTRvn0754T3+li8BA4Kan0SGuz0PA13zyQ0aPRnN?= =?us-ascii?Q?yemzEs4NO4A47r1VigYn2/HqWWinkN1ZnARcv4RGErIsoAPnlK6jiWASXI96?= =?us-ascii?Q?9NWlxoJcGB/Y64td8sS0ssxem5slgpA0Ft9eN4WAB77enjWUqE7nAvuxN+GB?= =?us-ascii?Q?3VOezxLbsJUV8+J5boHYjBnhK21F98TbwR4UNgkrKMdzWcB4PagciiGY+KqS?= =?us-ascii?Q?AMA5T/e8gnw0k9aDyuUEzZyaacepf42Jab4Oa7C8qwAAiRz97lKH8wdTu+iA?= =?us-ascii?Q?bWiFiIxoIQIQJ4lo07uApVrRKcBsL1xh7RcevTZU4xSvRREqloCP+ym7vBLJ?= =?us-ascii?Q?M+L9daHkYrosBUV/XfWksbrFaWPa59iBnc4QRrNaSYhzhQI12vACEPQ/Hjns?= =?us-ascii?Q?jcMp5OBQwAdDgqvbf7zxKiyWEcLRK3QSuOn3cA9FiJ27Q/1csbINeG3NtOiS?= =?us-ascii?Q?aS49WFULCDKcOGgdxPSJ46OGrYTXp7RCDN0K2VEM+fdstrF0yuXow49s7YqV?= =?us-ascii?Q?ViCf2kt6kvUUDS+RfWW1A8z0jx8FP5vAlj4uKEIGnGkDV16DH0APhCuZuiAP?= =?us-ascii?Q?ypdp+KjhAcp1D3SGnyK1112XPHxbYDEuLjF7xHqcqgDNOCnOg+SAGVJOiSD6?= =?us-ascii?Q?6EeSWq3fSb0AhCsDuMGYyitUhi6OmcvrbkdLvGfSWa+NI/o3vlAkVxoMlpgQ?= =?us-ascii?Q?OZzCsyoLvBEHlUGubqQpv3OmY9AWNOH5GpRBusUqwahMoOH/QBjnQcZEjlhL?= =?us-ascii?Q?oZyXq+qKnFHrfFEhxJvTKDOhU5wWsoQ39QJ+NrgJiVcKDvQijE8S4sL2FepU?= =?us-ascii?Q?n9guX8CvFveUNwJjHOtksYW5JhzrVyrETq9p39xigq+tIhs1rJOQqWN2306y?= =?us-ascii?Q?+q4COJDr4StLtuz499ueJtffVoG/KfhbE7nFmNX5lYAxhL3fAbmlC0GV33wO?= =?us-ascii?Q?Hy9mD5QgH4H/omwd9vHgAyXn4etLdr0KpVxJkbM/GkLLj+HZyRPWUhP5vkAv?= =?us-ascii?Q?li4EU9KNIjwrMOJ/qomm6EQEmajUzVkhigLgodaPoaC8e8NOe9pFybCPfotx?= =?us-ascii?Q?jnuyu4pboNMIzijeWDor3jBOogZzlxRLays2jI0uqvO/JgapaYIk1ibHAArI?= =?us-ascii?Q?mNm3ba5A/AUUp0HD23Ov+i0w8BOA1Y7O5dS248GnVN5b41oiQPItGA7iBaBp?= =?us-ascii?Q?1vNo6xKLW2umqsCttAun1S2zyYcvW1xQNRB4ttpYQKFUVYZ568HhSKNSL0gc?= =?us-ascii?Q?EtBPOlZalx34FFogr+H23Qy0ilIfBHKER2EOnHtqqmb1iogmEmLE8liP0RpD?= =?us-ascii?Q?c1KhSbt/grlNBkhvjNufJW8MDqljc2bKry0qmK6GxujntLLCo38bvsX5suW0?= =?us-ascii?Q?e1YOd7D1Q8+MuAjmzrgut6axzrET+782TB5K1ktdHh7VvsKkRNGvqJPncDCb?= =?us-ascii?Q?/JGAd5BFNwuEP/yrSM+WKDDE2kEsmoHmbaKHR6i1+fQR4UiacKusLPZXfDl/?= =?us-ascii?Q?mGIzgq1WdjEilRZZMAhIa0/dIOVksIJZTZDroiQuy6XqeFo4kclT2IE/yxtK?= =?us-ascii?Q?MtLN9KauMaxItMLVma2fNe9zxOJX7SaVsWJIQTQMI1SOK+lflMHrMD/WU5k4?= =?us-ascii?Q?JYS1y94Y73uSbwD8AuLj6etlqgZYFcJkvQU+wGvSymSDHFHlybsD3JDxqOd3?= =?us-ascii?Q?PijeOB0iTBs5e0IVAvMHw+15EPA=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: e8e0ea40-604b-493f-dac3-08dde6321a83 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:02.6282 (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: yGKSk6aHD+pr193CjZb0Yh98TbLFoeQVjWBqFNSoeJJMzHXO2vHhRR7B/F8iSITE2uPjhQAR8zsCjJT1ci4iCF6UbbnSz0XPh9WYJI5GIsYu3uGNGhuM1ewNHtivowma X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEVP281MB3430 Message-ID-Hash: B5HQHZEEQRDTLFGVITVR7Z4NYSMKGAHO X-Message-ID-Hash: B5HQHZEEQRDTLFGVITVR7Z4NYSMKGAHO 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: 1756386655203124100 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:51:06 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=1756387008; cv=pass; d=zohomail.com; s=zohoarc; b=AIIhm6cnpjj0XnNoNWdl9/7yLFcctKGRmmpsX/v5OTqv5PwoCIE9lin0FShLTKawqAMQEqTDYJTUsfZvVH64UZZy0iiVfS2RQA+5P7+S59nEERoEuTkQuHZlWZfhG/O66XbMRi4fu0izsod0aIPod7LkKdUD3gJpSXB0BS4mLFE= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756387008; 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=mhqe8jszt9MXJh4RMu4IGEfNUEEOrM0WCYm0WrzO2Sa92y+2doudRRtoVirxlmN1xd9tIYTd7kue5XCWVA2vrkM8loWqv7GF7FoJiqy7Nyq3lnb9CXa7CVn7c4I17wAAl8bDREus5Ef4Ly7Eb7wWXbgp840fXcz19Iq8Dso9l6Q= 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 1756387008412697.828597569956; Thu, 28 Aug 2025 06:16:48 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 6D7504422D; Thu, 28 Aug 2025 09:16:47 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 9863F4433C; Thu, 28 Aug 2025 08:56:19 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 3DD4A44094; Thu, 28 Aug 2025 08:55:15 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020113.outbound.protection.outlook.com [52.101.169.113]) (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 1539E4408D for ; Thu, 28 Aug 2025 08:55:09 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEVP281MB3430.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:91::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.16; Thu, 28 Aug 2025 12:55:05 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:05 +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=LApPNzdfS1hoge9UnQIpT3chGNo5qqRhnOosu4aB6FopQudON2OyEc2N8RGMkgS71cisH/PgYkfjcy9fOxVDgIn6AxZl+ESUqsrhhxbMThexq+42qvBRviwsaKZPXPhX8wcKKrhryW/tcmhRtFbBUR6/m87yrfPJwY/QStWxSJfc/njs/it8qBaM46EV5Gnkc/dE2UFKAVuWgavuOzSGuzw2nfHFKkZFo/aXQJCZtFeTMByBZpffuDIfdiWzhqpvCcy4cnQhHTxgJ9pKyH1WZfIiYfZ+dlt7ifHuWe0Rf9rbmCzrrFN/TxkOLYHMw8gExPhPCZMnvJlDMB2V1trjlQ== 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=IC4HzReQCzC405Y5FjDsegHRAcqCEz0AOIe5du2EWqeSv8i5Z6GkMfUakmhZpijvheRnYikGvLF2lGErC718ua2WybRmJOjuAYKPWl2Uf9OI82xGL8PWTPNx3NF/GmZD62rj8eSS9vyRp8T/LFmv0ZMrXYjyHx8TNfCQgBYvXwpknt/V6zfAXMUeJJ6ZtBNgvtMNUh13wgwwnKb2OLfhf2OWctDEeLKHeKWa8aAoZf3JoEgDBbr+kpGewoitLbVF7aJ+DXqSZQCNtEDCNuEMN0g1b4aN6v2c/8gPZiGS1KMBaEk/6m8abKiXoUaufd33CXu5CF0NQdAgcslW1pmT3A== 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=rCQ5+2v+mqDkBkSvJdQsEKIg/pbJcHOSda5VzWfS9O91XJNVv6fL4MMWcsoFPjS37u+6cA8B/j53l3mRYDthuhR9sXmdMQ61UarE61il8Vp2vggCMW1WxOmqn3XadurM4sMmQTfI6sjqcC2mb4MbiLKSfjJV77MDuHTJcbDIZS1xYDznBWPdht6wGvaUdzfSWrnCg7nXoPHElt1opc6V3H7vXdJH4nSomXp8Q8JFPoMoIXcgPoA46LqaoShWHlrlCKnIBhdx+tlFGJsKF45mr4AIWoBCc/UNIBBWOKEPKON4Vv6ENQhO7kFAc8jY3K5MjnYi8hJ4xQALWkwuk6juqA== 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 08/13] ch: use MonitorPut in MonitorPutNoContent Date: Thu, 28 Aug 2025 14:54:48 +0200 Message-ID: <20250828125453.202358-9-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEVP281MB3430:EE_ X-MS-Office365-Filtering-Correlation-Id: a686d228-3520-44a2-f028-08dde6321ad4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|10070799003|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?gT6ej/Fit6xMXqdV+Na6v2limg7nkbLoB54ykwq95PCLe/YbOeMJ4tri/K6R?= =?us-ascii?Q?BGP6SOcB+AmzeRLoXwEW5RxQHr2/ABzBYPD+eLowEAva7ZMDYhBhjkJfSFmg?= =?us-ascii?Q?wLBmIe/SjmWBupoPDUXjEpyr5joYxXJaBuie9Cvx5sJHdpv3PD5k5K0lctzi?= =?us-ascii?Q?ZFhtHVmcKBh/kLm2+mvpMWQJabpMoIUo84kCKsFupzR+EQnN7vwXHFzOOJN8?= =?us-ascii?Q?2t01P7+pdzFFDeVPyJjWVnJnZ4+DuCL3P/Z9naJCUmPXvb4brGVb6emdkiDu?= =?us-ascii?Q?0nh1WOsmMjRhMJ83MXbUmhXeCBx7N2uhk8oVlcUSdHnAw5nCD56P9VbttK6c?= =?us-ascii?Q?nF66BqO7prN6kbeiO/gJQN+XLJfLsH11U82DimA+VeEe/MCS+bRih1NcPuBe?= =?us-ascii?Q?0YuCqqBO5vJvn17M6DQTmF2oTX26odOiPxWWUZhSfuu8XH3pNcZUloKSnC6x?= =?us-ascii?Q?RxTR9cjsB656gg3l5cRUVXMUbzzJPRofe6unR4MtlzR1Cqa/PbKzfOg5nhfH?= =?us-ascii?Q?92LO2ijQdQ+7qcEV5DYSaX8dJgOmJyQd0zqh/6t5MQneKHlv5ccWbiwp/oGB?= =?us-ascii?Q?/xGb6WEnfHUfVffYEQXVqedFAp1cq3sYk7ePiE80eyVSWBuZnX2nD1eVeDf6?= =?us-ascii?Q?J5g3kVvxE+F3+bCoDXG7PgFU9HawFILJjXpACO9b2vJwK+430OFl32EQLpvR?= =?us-ascii?Q?zTTUExiFUHqhXU42RB/QWsoCS4REjTxl/cETCRWdRd+DnjkjomndXBDLC6yG?= =?us-ascii?Q?D9ffKaf9FnM2C+3miSAscXhx+zaXcgGrkd0zLi0TDrTZDi/locGC3FjI7NX3?= =?us-ascii?Q?361pSCjj1dVyl0PRZWQ+SyykbcX+PT+86vddjNVUfNtmp6MXLOYwjaU8DjpV?= =?us-ascii?Q?qOD/oOeXkFBVqddpTfg4fMw6/earrg2mdqE8xllcmJAAiQd/0XLbYdiVJvF5?= =?us-ascii?Q?M4BOeB3TG9g+sGPzfFSWoR7cR4dlqrtVCIFWuMKpbgaRVCNKkY3GymJNZndW?= =?us-ascii?Q?o+NmnMe0tV5BbU4//TUVo9YfdALZAQsuY6gTZy8a/muVOpBoDFVqweu5wmHv?= =?us-ascii?Q?1c4fXh62tEthwU9F/uLBwfqxQr8/2phw1652Q29+Kb1Lv/80MhD18tBkpWj6?= =?us-ascii?Q?/jWR+USx91Laa0lmH1bzyvudKaaugnN2qTdR2I+biiSX1kH2AMq+1PD5L1iG?= =?us-ascii?Q?WJfPy6PNr91HgOZyl5Xw0aoM+iRUjacCvvFn8t8FrmmgwqwRSim1jWHbAo9Y?= =?us-ascii?Q?x45334lqj4s8rb8awGDh37ctXSSzb5ACDrmj72siX8DYMmMHQYZ5+MicSml1?= =?us-ascii?Q?LMQCOwPrXQ5X1QF+Z+AmKpbSuIUcfrnlv2cQBGJ0zY8PIBXfIEj+kwD55TJo?= =?us-ascii?Q?Bo1URd2NuzQEUW6U/EjCG5N7ZYP5uxOnj2xA8rbbvC765xyzz5zUWa3CD4WB?= =?us-ascii?Q?SZ6osJAbkMo=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)(366016)(376014)(10070799003)(1800799024);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Hvoc49CTlk15pVd0382VKGwB9W6Aj5Q0GWsu+mD9ILRn1oXtP3y7I6nuduHm?= =?us-ascii?Q?EyQX+DxnhnVZscSjiJVYAhQT6Jm7v32PZs6Gr4OmpI7HrkIooY/vj5YXP7uv?= =?us-ascii?Q?eJbmPO5muk9HSLEEc+/Pph25x8YwZLHN0HpEAd53TNGAseZ8yjvYiFZg2DCH?= =?us-ascii?Q?9ZoDsD/weMRW05WuSQW+6kOZSv/jbaAREF9jjndbN56lAnUIneWsD0czq958?= =?us-ascii?Q?zb0mN1DsbJkesIUvpObrlSj0K+uEH66ZbEY2mlUBgS0IbqavwwD+piHsQDDn?= =?us-ascii?Q?FQeEQzBUwKr20IsEkm3NvMtLl/qlcq+x1eMowoZjX2OJVfJJaTsGrq5xBttS?= =?us-ascii?Q?s7wui3WZUWIy9F6/Gt1/1zK913oW3v31MQjnZZfVweaVfrYH5UJR6i80T3ef?= =?us-ascii?Q?eGPPsob33YBeulb/tCsWuT4fj8fQltZCKGBO6/pfaa8WU+ex4S+Y6TgEqM75?= =?us-ascii?Q?YU/CHWmGxdE3XeXzLznuLIBXKqJ5H5c5up25skvtCc/9eClFYaEnC5oq+Jv3?= =?us-ascii?Q?uYyh9LRqudDpLVnkMuDtMKF2mviqSwXvMxhT9dQdGIH84TLczGwRhK9OOODI?= =?us-ascii?Q?U7NED78Qc2KPJGW40GfOR3wBpwG39KDtEjIWkpi5C7NwlieSTN2yTTPHr4xt?= =?us-ascii?Q?8cR0/n0SS5PcArY8z1KbtXDzJRJ9vi0F0CYqZAAVXNJkJ74KpFyBgQO10rab?= =?us-ascii?Q?JJMKuBzID1DvI3Sch0CNc9Wsg64kcELsZf8sRXoASKjx5QckRyW8KDRPuGGA?= =?us-ascii?Q?mYtmjA/keBYA+01vesOu4FAGZX2sh3lkNRBQr7iC9HdmTODFsJJWJcroNpPq?= =?us-ascii?Q?OApBWEoiflU8KSaqOu61tgsaFag0CB8p+nTgLhSoQbZVonudw/lVJJ3ljmYD?= =?us-ascii?Q?4bGXHciCnRnB2tcZRK8RbxvcwPc+aEvA9BVusBMKveYWPodRkx0qsbUFikZF?= =?us-ascii?Q?nhhoYka1vvmXCxfpvXR9hH5yfLrJQRSqdvTxYWvec2RupUHwichg1tz6VdeG?= =?us-ascii?Q?d/C2N1tjvy/+cOUEwkFXqpFzGYLoFTxBzhhY7oI1fHNZ1VWm0TO338Ht+EUx?= =?us-ascii?Q?t9uLliOZ+2K1Z/wo8d5tClpTto2yuxyPNpIKzG/oM8mlDIiumVUNRRyOght3?= =?us-ascii?Q?I0bVVDCwr+4PZEIL07gKos+YCcY3Pb4+cFGCzP90F4ovpwA2fBHxhMXStOAY?= =?us-ascii?Q?vSAjEWKosV5KXxRLZVP2fwSzCDfJNoqHAH81sWtxtPFkViv9AGfspCg0sUqR?= =?us-ascii?Q?JJ3j3Mh4op/SL1X7G0t6eU1i5XGGPlNaJjMLt/y9ozSK008OJi2mTHMmJa/c?= =?us-ascii?Q?f76xWRIy/yqWKipGLOfi3PASGfK4gYfBKNtF28kbPWYAfV9+NQcD37IClwgj?= =?us-ascii?Q?UMklPCS5l7EwcGKJRKc2jUs1WPP++TzUdnj2nQIawtUekvNbvYG/XTDj0LFu?= =?us-ascii?Q?rCF6dPtkdfYmJPdpP70+IYqpBIK7LszmbVrfhySeUcDnWcLwOmy8CvqGJzR7?= =?us-ascii?Q?od3vY9kNjf6xG0Z+AoPfNlMzQDz8mkdHKhvMhMLunayvmigp76gnQ9qAaiiz?= =?us-ascii?Q?1Fly5wGVAzYUXpYPU7Xya0JFAUO6XXcmGrklR0fo/YFt/DRgT+J88dLXRJfw?= =?us-ascii?Q?AgSUDWInhEOZV7N5aU9q69kLRiuuOAoVoVnLnpfdhx4TW4Cem6nUAVVAwlRb?= =?us-ascii?Q?6/sryGXtip1iK7YUY0Fi3rNuCLU=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: a686d228-3520-44a2-f028-08dde6321ad4 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:03.6417 (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: Inf0VMdSh3Fa9SrVXtul4ollYA9qoCg/Zne3lt2t0lRZdnbFRY4c1mbVo8DKhVMWPgc7/bvsJ903Yqqc2vXHp7t2ebKD6dXIkZrHZejbCVxti51r8VcXeaRaIFbAKY5Z X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEVP281MB3430 Message-ID-Hash: WQUXP3UIHNVTCLUB2FETORCGZIWPGZN4 X-Message-ID-Hash: WQUXP3UIHNVTCLUB2FETORCGZIWPGZN4 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: 1756387010731116600 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:51:06 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=1756386815; cv=pass; d=zohomail.com; s=zohoarc; b=CC8kcY2JExy9fNie6rgrWioUADNs9XE4znmYsdV9D8ILdoPJOIb3BXHCVEPaewZiVfbiczMtKUf7ort7PWSWfqpC64xvwgNkeEWv9qJegpZlHbAcOvt37u4lEdwbPrY2zvZCgHXxwQk/oRY0yiWJRM25WC57i67gxjXOtbO/blg= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756386815; 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=Ygg/g3Bx5Q+4+z3LEqYPESHn5NlN0JZ90/BzHDvfRfQ=; b=n0qPihKxQloAdd+Kxypx/haqbbzgaSsOkGyeCQNfZh2Zt8Avr6J1eqj5tkHoFC+PwO2CydxKoQlnN34t4DPCiX6WhZchBp9M268uJnbho2D0xv2f4/3eOT5m5U/KeHpDYsNcYQ0lVfpHcJB4qhfvpHaGkuPatPmO4nyRCHZRuIU= 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 1756386815152687.6504319305438; Thu, 28 Aug 2025 06:13:35 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 22474441E4; Thu, 28 Aug 2025 09:13:34 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 9CBC34425B; Thu, 28 Aug 2025 08:56:12 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id CAB8844094; Thu, 28 Aug 2025 08:55:14 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020113.outbound.protection.outlook.com [52.101.169.113]) (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 54A984408E for ; Thu, 28 Aug 2025 08:55:09 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEVP281MB3430.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:91::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.16; Thu, 28 Aug 2025 12:55:05 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:05 +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=GFo24ItDsoFCh9OX9ctrQrV6iI0JzH1XsoASz4dArojdppv9NTHDnyj75aQhkjfLVazfxqpNnGTiFihNqbjKaZci55WE5YdjL6oH/yBZO75+XNiggA5csMb5X34neWH/PXlpFn+JBSwfkZwNsBoiRSv9UnSa+UcOGdy6GHUv9lS9bbrgfzanRmpuhvaNFSDt/T1Abskd1nvGCu3s1BszofNOXtb6fFiZtBXnnx7p5auML5D9/h9ZXk2+RCdceTuxw7leV4ZEeMsyGL58tVX8sTEF4M/NcsI94kDDy8I1e0ho2S3sEglpR8CYAtoXv5HnBLTuGYsR6Q6iwX6ErKL1Mg== 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=Ygg/g3Bx5Q+4+z3LEqYPESHn5NlN0JZ90/BzHDvfRfQ=; b=E5ZUojRW4iu/gW4WboPMtEIzl+Q4iRD/YuXSlHF3UvmlZRuOXw5F/hDY9iR0iSoZ0Zyoe16g2bKoNbXZm1UD/k1n8rING856UObz2isakz9FgLIjzUnSkOa7KwiD6AiPZp9K9/2LPhJ7VKKaYbVNS3UUYALYKHUtEplBhE1hC009fLc8J6gjuOrkayZe2rG2wqal/1NOKcDkYWBsEQPkdaArlu8//p1TeiHvmn+wAjFmvc6Vb1PPEEoXXBangJpGf1jM8hp0ELrf/+xefryv/G4UqwG2aEgDDLaOhOhEbvsm9pqtEndXNYTcAQW2QegD1LzltdovXBUknpwoS5TMTA== 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=Ygg/g3Bx5Q+4+z3LEqYPESHn5NlN0JZ90/BzHDvfRfQ=; b=xIYblTB/mp8skc56xxz2djO89ZoJzBxMDXdtWS1CQGpt7TK65cc+fLzhxKPfkpzJVB2LUex6gHXSVmEqL64rFYfopHkLbxneAnp06ZJigmYSNr5lSMcyQYcpC7HiE9xZ6ghOffEADlrWdDRgVDUkWZoohMmbDULPYAzDmq6TP0th25/WBbPxnjNwL3cLy9n+5fXkmiCLWeCjdoOURW8bqhWBfyGPMmdjrCOH3CqT+0QIfZ91gQjDi/Z9QMd5U+QtufNyHmfiynGBrceVcAGjQ6MqYHahWlr5oXz7CMap7k7ImddjB1j/fz07lVIck8XD2P9DIt0q6TNQqsRF2E593g== 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 09/13] ch: add disk attach functionality Date: Thu, 28 Aug 2025 14:54:49 +0200 Message-ID: <20250828125453.202358-10-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEVP281MB3430:EE_ X-MS-Office365-Filtering-Correlation-Id: d794d51f-ce00-4e6f-2b01-08dde6321b82 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|10070799003|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?RlW2UQRo5BntAFYR2bNBYMm4bvtIXLa4CgB9NCyp3/Z2ynIIuYov5ZHUaUHs?= =?us-ascii?Q?sRr9Bw7b00hKMKEKHdVseM9o65VQz5U6eEXqnftnFzwrghI2RF8CDxQna5GG?= =?us-ascii?Q?Q2ZAXZb1xhHwdGVy7mYvokS1f3MdYiPwk8iVNJnNVRjv5JS27Vu7Fa1130Uv?= =?us-ascii?Q?TcgiC14sr2J5opYfjQNcku8R6yrB3UpXcexJUTJkBOW2f8vGrDTF/kn3h3m9?= =?us-ascii?Q?nYSkFALBcMONuLIugYsh3m8SGnwj7L0Y7tinCDBvzZreneJnec2DDKE0EdeC?= =?us-ascii?Q?GeR5m//qOIPVyhCzUWESkbb4K7Lr2UYeHMrSOJaY4MrnxgFeyO9whJeH29ua?= =?us-ascii?Q?PloyL+75BIfWuKS2ALK+yAvSsnMOyB8ej1I32aSP6QH0rndw6ZDTS5r6rlon?= =?us-ascii?Q?IqRcEzJxkSUkqjOafWEOyGHnGIi9izie+4x/hT3Ow7A4qVhHLdTENq7pRbF9?= =?us-ascii?Q?c+ELIb1PU6qtWa0cKiqoquvpWK4VGg6pmOiy+4Y5FMrgvM/U4StU+p8ZjGsj?= =?us-ascii?Q?3umhb0YgqZdNaEdkvdsQPZ2+Tp8ZSvzQRn//NN+gSZqnfojirVXwZNDi6TMS?= =?us-ascii?Q?j5xBJNcfGjJEua8TeSQ25p2NHw4R8BJLab8PND5D6Wm2o9mlAa2lwm+QHQPW?= =?us-ascii?Q?4ERNqL9/owXJLypsDGEA5R/nddQdYOfmEZB9CDNQf2XTmxqWwQ5oRDarYAgD?= =?us-ascii?Q?rjjl5RCM7713IKLN4fBJao9Mm/XoRFmPJBY4q6hqadC4Yo78Bq3NgGMKa4Sz?= =?us-ascii?Q?LYK//o/q2v8lSg6p+kPKOboYDVS9aiJPJSoT0s7OySzLPl6anMDbYXAb49sF?= =?us-ascii?Q?7flcWja6f2Hclg9AAurxt6YbVOA1f++V8OM7HwP3Mkf4anEcdC4tJMp5D3u9?= =?us-ascii?Q?VQ9cJulxJOILTiWHhLK3BmTfF3d64+JjAboljB5MO3PxmE1vNtoLhnIbKUyU?= =?us-ascii?Q?QuLZpqs3D6oSZYRCZ2vKuksoT376y6cXrjAeI7xX3EU9srXeoMFj0/kV07b+?= =?us-ascii?Q?DV36Q+PxPVPLsydAAZ9vmQIjvPyHLPSIvkW2vRBg+R4lQaNskORAjNtrePKi?= =?us-ascii?Q?3ivNDGmJA6vaaDxyT+3cpxEGxVo6sNrZlo/nBoGrnyPM8gDRQVgQZlC0t5H0?= =?us-ascii?Q?Fzf7ajQe+ie715hW+MBIsZZo1KYzDKL/75kg//Mq89cVhyET83ArS7tZFvPF?= =?us-ascii?Q?zb3mAPZ1M0MmFgXykDkVrfMIf9SKMqJu2d5I9n+LIfyPDe5E9GTaWIr59/cB?= =?us-ascii?Q?XDhCDAemSX+nERZNEI8Wn6ctH98xWAKRXvP9cxExozQ8dinX+SSprpRNUkIA?= =?us-ascii?Q?+SOHhKCgCTZ5aywWar9VoXFo6bddJO+KXkR8V6OVKpXtCvigBttAh9X6eD57?= =?us-ascii?Q?dOkWMZYYwsed/qHNd7FHEtfoNU06+0q8T/7aO32LhHLHYIyRVfAxB3yzBkc7?= =?us-ascii?Q?CXpyzvnYRNc=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)(366016)(376014)(10070799003)(1800799024);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?iikIh8GTkvMwqVm2QniV0DJRhmy7x582l70wlWrSrvYvTl6qjSYl1I7zgC7F?= =?us-ascii?Q?nuSae2o0mSYoNiSiTpx9RrRFfq3I5+X7heph8+1VnDBDRPQQfYEQkMXot7Xn?= =?us-ascii?Q?r7km0DjPZx98Tn/kR7/dPwnDf9qdJsDLeqBd1vfKJHWnsQElKh1jkMgeL0FS?= =?us-ascii?Q?oiquep7XHhgu6P85ZNr5okwd02e+psvtDYBCZtNhj1ztQnBYfE1d9JHauBmU?= =?us-ascii?Q?nLq+CY3vTwXUQy2yA7CjYhHfT9tgQptOYevEpO3qRUoJs7FEDb4O14U3GHpO?= =?us-ascii?Q?NwR+puTuPYyAGmkGEdDH1Ikhgi/PgOATSW1+GnYtTzZ28vVZYa8xeGgOS/CW?= =?us-ascii?Q?EEW9ZOcIgSx+mXo0TBAwuXlHELkIsJHu7msgNxRme5u/XOD6gB+BY5ZozLkR?= =?us-ascii?Q?U5mwm8pTJII877svofU5F4FbtPaA5NPHEBhDlwgAFE5ByEHvF+N7OMy/zXz7?= =?us-ascii?Q?dUvDF0ajNdGsjG/Q6TupFxTl5gyxWEPii1Iy0li8spGkBbzF3Mh0OrxMXRYP?= =?us-ascii?Q?vGEV3s2rXwWmQPajDLD7h6Ynt+YXMYdbQLmMNVUnSoeLMPgXj97YASt0wIRo?= =?us-ascii?Q?FQ/BYIpsbUWbs8zGK51Aa23RZiiGhDr3HX1gTZUf7a+w4yV+ren/hVvXFzoK?= =?us-ascii?Q?gikEaTYPOFzwQFPRNhihEmTRc3lwxrm54xW8uWef3enAlw5zoTY4Q2l34Cin?= =?us-ascii?Q?gX2PnYMCOI67ya/zOGeAXm91ODobYokQKMILakkhLcSynCaVbVzoIm0YBT3s?= =?us-ascii?Q?1zT4eth0hbaSctGfwytfKa0Zpd3k5501qsciLgqPxZ9fNzVV4SD07gtvTYfk?= =?us-ascii?Q?P0yaNWtsqtYKstFICG4pDbpIMHvaIIBpr5TU6CW5jkLpFhB+6qnbz2q+Ethd?= =?us-ascii?Q?hfDT9an9P0ObxFzfXBQrGtszTrrw3Xhe8oa4nfuY2D1A5vYCnp0Ttp9jGCH4?= =?us-ascii?Q?mIM0tt1rs3YLNPU6uOjJEUJ0Y282JqkrL6ASbTLvh+rBcQjea11oxORrWoO/?= =?us-ascii?Q?vDT6RrNNTee8qwFwnl2+6OXVw+4m93TB/BlSvJTebJ+jkE7Kv2ouUD2pUoF2?= =?us-ascii?Q?bPbk17sgTQqPhcp817kbbf5b9/e6OsQnRnza1yyzZQ3hx8knWnT2zPKGdP3u?= =?us-ascii?Q?lf37OkfkaR62TSFl2i+RJyldY1Ymo1nXcgRjSXln6z9a36bFCFNcvNeshWJo?= =?us-ascii?Q?4M3FncqwQeOrUptbg1MgIfwvm8zwghSiC5Gqs5q8fUcqPgagDnTh/6WSj+rd?= =?us-ascii?Q?L9Efhr5+SNFvL1U/ZCaKfkgGqBV4kiXcCrixYaUZpi4dqe79Q/jhm3eX/J5d?= =?us-ascii?Q?G2PtS3HdfUHsCJr9/FzLZ9FsUk0Mn2+d3kvuB/6y0vks+kmXQOlI1fAjHEnW?= =?us-ascii?Q?F9o/0QLHzBwmMdC+2e3GlSKQZxDA+/EkUR+Iy/Vl24DCO8gIOHkZbBfEfDkZ?= =?us-ascii?Q?ADA4Zb0Net5sdtrqshQY3P5+u7VdI8qmsQ1B9HYrDH9Z5dDOOYiIiwshjSy0?= =?us-ascii?Q?QgzwpJrkQRpQQn/aD3X7t8APnFbb80gT3Y/0/ZggQ+v6pp9ep8lazI6vKvfM?= =?us-ascii?Q?hZFyj9SPtSsBaukmDEFMStl756CMUS+teoIF36sU2FsG8McNawHCYF/gDHr6?= =?us-ascii?Q?xpyUj/YLRpIezZeXzHDOA9sDBvHxouH9KbPe3lDvETvku5qex51NglkjwTZl?= =?us-ascii?Q?iUN21BXdvj/kE/W7JZyx5KBAh4I=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: d794d51f-ce00-4e6f-2b01-08dde6321b82 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:04.2733 (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: lQdvOTRuJM7HKCiHSgAX7yvc/vbWufUaWeXwmiZieLYTbcHg0/Ys/ERanfLU/wJzqEbezBjTrVVnLtKeWiD6sI6c34M+8NHoiEJ/LcPEKZfWMuBeCphYnMrkI8VShl3C X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEVP281MB3430 Message-ID-Hash: GSLJQW2Q23X64V5OWBJ2ELJHMTFHV4CS X-Message-ID-Hash: GSLJQW2Q23X64V5OWBJ2ELJHMTFHV4CS 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: 1756386816710116600 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 | 2 +- src/ch/ch_hotplug.c | 131 ++++++++++++++++++++++++++++++++++++++++++-- src/ch/ch_monitor.c | 17 ++++++ src/ch/ch_monitor.h | 4 ++ 4 files changed, 149 insertions(+), 5 deletions(-) diff --git a/src/ch/ch_driver.c b/src/ch/ch_driver.c index 39f9d934c0..0484201c88 100644 --- a/src/ch/ch_driver.c +++ b/src/ch/ch_driver.c @@ -2366,7 +2366,7 @@ chDomainAttachDeviceFlags(virDomainPtr dom, if (virDomainObjUpdateModificationImpact(vm, &flags) < 0) goto endjob; =20 - if (chDomainAttachDeviceLiveAndConfig(vm, driver, xml, flags) < 0) { + if (chDomainAttachDeviceLiveAndUpdateConfig(vm, driver, xml, flags) < = 0) { goto endjob; } =20 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:51:06 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=1756387292; cv=pass; d=zohomail.com; s=zohoarc; b=a4suzJzT9lEh2c8/0o92K0eSe4rGGsdZsex1+hybtT+qdOgKI7dNDem7ly2uuNoswSjJ3tLFt8QtzUFkVA6dVrGcrxwicjoYGTqb0HSyxDCx2CW35Ni0OtI5Xm+FjbKv4Y2ieCWNV1ybuuMY2Zu6B5GSI/QV2jvN1q4QSt1PYqU= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756387292; 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=A8kNAoJ4WYayMaA2yQ7P3//bdpBhkF5g4BDh+yukKHUjhftHzZEzQZnX5ZroRI2a6Gz/MtQ/G0j3LJm+JebqIR2XiGoOgk/cLRIvNCJMoaVF3z+kfTfzeMQeb8JFrUktLWssHrsd6cfXnmB7H9M87HvO9OiekC7VKc+bOtBamjs= 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 17563872919401001.0819065665825; Thu, 28 Aug 2025 06:21:31 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 59645441B9; Thu, 28 Aug 2025 09:21:30 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 3AF154429B; Thu, 28 Aug 2025 08:56:33 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id D1E67440D1; Thu, 28 Aug 2025 08:55:15 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020113.outbound.protection.outlook.com [52.101.169.113]) (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 94C4B44090 for ; Thu, 28 Aug 2025 08:55:09 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEVP281MB3430.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:91::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.16; Thu, 28 Aug 2025 12:55:05 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:05 +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=LeIgTieymhHLmBD0diONrxL+jT9NffQ2lOyTFOKC4JD4oiuEZiV7tmPgb2iU/n5rCvFWsVqTHzYzsR4EB0gsWazZyCeJYUWdN6aEzOI/RVxNjSlUBYi1+4vs1B0pLxElhraVdPbH81qPZA2ygyVMvd/FIsdTatDDg/1Xq3p70Ptuw8OesFKkJHf2UNmxLl5KgGt3b4ECbjVtDW1hoCodM/5DUtwrQyIS30JensHW9++H/mlaylJaJ8Fjyr0qwfI9c4Dnut4RR5LVrhYQGJkvck6BYl3D7hck7wJdpE7LOvWjQi9WoY1czRRV9s2BejMlJ+PtYMGqujo8HKYd+W0+Ow== 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=YmjRgxD1F3wKM6TKdt37PSCEWzIt+6bnterNRTahY/uewUFN0shEMdSX4PdqrXn2fgrJiCFa/GuNo6QuZq6loP2QKC6zWPXWCdRkv6T1zS7dFl/VZdA38tTWUNPJZHafeZaWd6nCdaF03lr1peXaOY3lvEblORDOqsSStNA4aPGlLBHJxaHx9QFu5beWeZCfZAqdNIIwWrexAHLuD4yF/947xPNxLIsSgPv5JFYyRzezREedf6qv89vpLXyKNp0ZdpM2mDPVQ9qNGBcj7E/vQLYYyzK/r4tcEL+1h6JGJU7VWg1dApxTnqnl0C3mjTlEUbAF1vq9Xwrio5ulMwnvmw== 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=PNxI9H5SuS+gGoFEiegNz3AXu3wRhBe40hJWuCgbaHzf1yAnFQDdeqHGQiEii3gNZNXOgIhInfVLbcjK+N7ZGP9PgQKYEU8vLwN3tAMvph7ldjF3IqfErWDs59kdzijrwP3n5EugFaBg/I7bvtiAOXDRc2HFzpBjzR8DLER0IoxZPPkr7hq0tMTwlRZzUD53h+bx86uRy50/oAJQG0Sot3zbcYO8US5D7AQi3iKWa82F30VIjoT2D6aG4lNpJL3DxRSN3Cqgnx19SmTnHVzwikCBqx7njZL8cvbogA3UYWhzvzWLxCr+5GBeq6wnvx03ucG+JemKz5WW0oH0TwM6MQ== 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 10/13] ch: assign aliases in ProcessPrepareDomain Date: Thu, 28 Aug 2025 14:54:50 +0200 Message-ID: <20250828125453.202358-11-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEVP281MB3430:EE_ X-MS-Office365-Filtering-Correlation-Id: 4f395703-cc41-4a36-b7a3-08dde6321be0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|10070799003|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?XuvW44s7uQxpC85lIyDdukFpp22MG1jWQ4KqwUBDIbYuwrYEZ4VWc6ylDjUd?= =?us-ascii?Q?QNg89VBAkKdWcMmXVe8UZr613/W+3oNMevX+d4GB61VbODbWDFIFwzpXmQ9d?= =?us-ascii?Q?6io1i3ZvDAllwnnrEeR/2q2BRqo1wJO+dvTolc5CKMMrhioK8zAqQzfdVO81?= =?us-ascii?Q?aUgyRSZkoj4dAqy0c57aW7XETTAt8nCBlyF+qOFtkauHlejV/pZfB3ZcZ9/x?= =?us-ascii?Q?ov1M4nsABlcMSn3dFxjxmLojLOs11UxH5cAAYK5Pni/5fQEasgE9kASV3U1A?= =?us-ascii?Q?YUHY4xLBwEXEdEx5TdvQ72LsjTxRo6NNS9vKjf2dkrvsyevCbxrGi3tGyAw4?= =?us-ascii?Q?pYT6xSmhbzMIay3dOMqxnsLZpd+/CNVcshrz1Vqbtt5nHck8+DiK8N1L21BY?= =?us-ascii?Q?GDqgw8QLIjI+lfH6YSPTHQbKzrX0rtWAbsa1++mZNy3p7f0eoc3sklHjLQSS?= =?us-ascii?Q?ihtsrchcdWHrrLc15RfnPU4eXKuFQRXAlnpYauHIQ8nqvZuLQbHvWDJ+WHB7?= =?us-ascii?Q?BaneSdwC+V1OkNfMxUIOuvbuS5yTrZrLAw3Nk+nulU6dYyqgq0BUOAd8nPvP?= =?us-ascii?Q?TVos/lxNViqLvbY0ZYQSP5oCAWLJ8G04kDNOXnP4uBlztwGA5sDc9RJ46kvO?= =?us-ascii?Q?CgN5SID4Rb27/WPloWWutaVHn6uUBM9TGLGTBYWH6hCMw8IxqcY/KNd/NLfn?= =?us-ascii?Q?5OnC2FxvEb2YkTmQbkhfLTpve+4TfrQOTWcXckIKVHLoq/SxB+M9poeFc/7s?= =?us-ascii?Q?4ENXtzJlT8fWCwyxyxyYkr1vB/GyS0XQI5LGRDZbRJFpmpGxDWs0U5A8V2oK?= =?us-ascii?Q?wXgr8Xq+szan1HDs7vt60ewksqbLAQWoCws8isFo1tudx228FGOgJ2PKJ1TM?= =?us-ascii?Q?zmyn32GKRxCMJtYTk1RG5hPgvbprWxT6Th63PBBbBQ4moWiheB0B+JvylHgB?= =?us-ascii?Q?R28iLGeqnhVjhinIl+p2YzuaVMcyD+ZRuhVluGuiI6KBrh5tmpWIE3A8Hye6?= =?us-ascii?Q?90cZW637V6m9wytuto7ITooGH+ms4+wfQJKM4fTpSAKlHV7/KJKK+tNLi7q+?= =?us-ascii?Q?yGQqzSiQZXuIYX9YD5UFDGUBwzg31QwtBSXXe9+jTr7Dl0XyeE5/pzx7FclX?= =?us-ascii?Q?fk/WV3SvoEgtBVqLG15JLjiqy4U3tQL0Ek/KHsxkMTtynY1NlFk8+6VlbU1n?= =?us-ascii?Q?BWFQ45f/S+MCD621iTHvBNTvJZk4SVgOEB10Zz0nqDqTUcqOQ8QBZC1yj54O?= =?us-ascii?Q?2bszFwnhMfV2puBHdHkXnTyg+9E1ZRLx79RjKZ2M2wwqFoBMyfur2FrSXGSS?= =?us-ascii?Q?Ba+4wNl5NsVoUAp6LoqGlszdXkeX4r9T63AtS0wiKMqL/yoW4ng23RiRLhAS?= =?us-ascii?Q?DzcDgWThFD65vHniaY9XXKjwSb1JOhmMVQ59+7cFIMk0izS2IfTO5EwZz3Tw?= =?us-ascii?Q?CsLxFDTHF2M=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)(366016)(376014)(10070799003)(1800799024);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?iQM3YwlbLmnydI0Gb/SA7qaXmlIsdexdcwKAiuMWCgI3ZGpZ6I0a0huqLx7u?= =?us-ascii?Q?NYSClN/zTgsUyJTZSCVMBPl/FphHcfIjND839jMMCDG2sYGEZLxg+1n4PJ8n?= =?us-ascii?Q?ciriuVLpnSMfrsAgLJG/IeyRcY+CCNGX9of2my0ClhUMAjhYgcrnAIXJOEe/?= =?us-ascii?Q?Ke5lsBF5AuoMaL/yWqG21icC4HngJMawKPSixkgbnxDXtnXAiQJ9OzKvFmmX?= =?us-ascii?Q?YmVOsu71Fi43jfrsHW4sMJ9mssZ8ZPZ0LKqkScDoHLsLE9OuTXob17SZBN4j?= =?us-ascii?Q?8QFBsP1hP/HJk7T73gHY6Rz+bma8U2tjpK5rbqTS4MGb3euN7LTF38HJzkfx?= =?us-ascii?Q?IarQIzEh8Gbukn9p286ioG8Rg3cEI3sHiYe6N7QfbWajoE57VAXEJeqsET7U?= =?us-ascii?Q?qZuxe6K0fPU/rs24y3jMZodieWRiYOCBTKVU22Z+QwIfm0BKYvjwxplQEvRd?= =?us-ascii?Q?697+4+QimdUBlqX0VZPUX9d2V5gOsU47G61GGZN1Fxm7uF0CVv7gjCIuGYmm?= =?us-ascii?Q?yLokzYH43aPcHV3c5pDVXkM+qioVL8OBCNeVxXVZ3+xb2M+Tq8ZaeNQg59Kt?= =?us-ascii?Q?MNJnE6iWtqmouUEvRBEZ+IEDzi4wAFdRXDbvVhzTyceg8owQeTePAGkCatWs?= =?us-ascii?Q?KsHw3btGdxtAqmR8X1yPsJ7SF8jNsjGt8+jB09KTjFikpd351yBXrxuDkdQ8?= =?us-ascii?Q?Yv2i6XRji+rRcyDDzr/KG5ALw/0tvZ/44NKXFkQeqvs9pgcSh9XHlEXvAXMp?= =?us-ascii?Q?pC6D3XUs4amLXjrjWDS0JzrQ1JaPqme+bf5iJ+yuRJnVBpAF8lWfy8XOsZ3W?= =?us-ascii?Q?lk6vv9+ObpEW34XRjvRJHKSlKOme7VNE12aPQNQJCr4FIkOmNWiS+aXsy5VP?= =?us-ascii?Q?k6PqLGbpdmQOyBzzX6p9W++Dev00/7A+HtHZ8PsESW/udCUKH6YksPM2QBgK?= =?us-ascii?Q?qVAwKTL0FZiIDS0Na5yf2voTGeWMnGNqzuIbp7sMTpw4AvSFxrgRX6HD4G/J?= =?us-ascii?Q?vvOZEIaMAUUmPvt2OfyYhuB2SIMa+jLrzw61bvKlNpUHLJtMRnDZ8GMbZ5q8?= =?us-ascii?Q?8o4xHAT403r3wS+HemYIvPuXRxCgG7R8hyRf+if/IPhYBZoORpy2ebkNVE7C?= =?us-ascii?Q?4HvqQ3ciW2DPPqGz3ptU9gLSF6ECqfPQVZ5v0y94KRHz6UScFlXvSI/EczdU?= =?us-ascii?Q?RBMO7RnWdjWgpD15Oz/tqKqfukhzP4AQiGBF7LBX+BvdaHNzAjwtm9slGNze?= =?us-ascii?Q?KPCOZhaDC7WzYNCboBL1AD7othgY+LF9vdwp8GXDOA5cL1On6sEObUzOvdjs?= =?us-ascii?Q?OfSGkZDvUO18kzJ/kcpKCyNVjoYni6SAK9Qob/qrSBrvsl17KcKdmE5DADs1?= =?us-ascii?Q?4Av/1dK5YM5R9jH2UZVUL1i2uqaDZMX/PqJLqRYN8auNkGsBx/XQK+F/DQ3b?= =?us-ascii?Q?vQtR8yvNmsv2Lg5cyeyhRVGgyQ70il1VvhhvmSCMCXWWi+f1kS6l1B/m3aAY?= =?us-ascii?Q?hyuNYcQFpjKn2Hl6ClITWw/BJvh/ZlfLoIOs93z1MLc6F75BO+UcDCZzofWO?= =?us-ascii?Q?U81BPpNKYd6EMC5AWGvaz9v2rP6uBzArypSwOEREm29YkO7ZKTKSVpJNDFzK?= =?us-ascii?Q?jUQbqCC2RlQjybzPp5S0QDqvbn7A8QNp94yZ9e5hg1BSAIHYG7soB2Kbt6wM?= =?us-ascii?Q?1puX5uuib3g5ku/dONvOJCiopnI=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 4f395703-cc41-4a36-b7a3-08dde6321be0 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:04.8568 (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: p88LwzeJ5xepxhkW8ZrLoUq9VKbv8hmHt5TTD7o6yZwZOuimjR3DrT+/D/mIH6fyhVULL1uS4CNEi2r9cr3PpBzdXmJLktmcBX+p5QQLRNwdPIqaUC4sbGXr6O6n2kc6 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEVP281MB3430 Message-ID-Hash: SAOY3XH4E6B74QMDXEXEDGU6E2DZMN6U X-Message-ID-Hash: SAOY3XH4E6B74QMDXEXEDGU6E2DZMN6U 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: 1756387295250124100 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:51:06 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=1756387473; cv=pass; d=zohomail.com; s=zohoarc; b=Pc7E83a5pRFc5fAFVpz5bvCMN9k6JSJJQz/fiQQrjjjdlZkrivECWiDVQYTYrteR3qnXpNAAJ7p3PZZWD4hNVz55xKMpEnHeNaIZKVoYbS2cxqnUkxx690Ifb+6HCHprp5mYIIx1kswKQNnjbGd/bnYurdbcZfq8FAxJn0ZhSX4= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756387473; 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=Y0CBwNd4Bjul1Ry2LVq/2AfhT3iTgpUtVjbrLuu9YO8=; b=eL0iGu5QfhtA8dYd+VPdf2J0juUrX12XxQ4f1xb1+cE+i8ER+eK6vcrw0WtgMPp7QgT7no9GMDWpazVjf22TMzacx4i4eLLd91Jou2yo9bapGkLV39NDQFnCLfqU7SBK2sVlS+f3j08UVWPaC9ZdvwhSDrr+CZu56VWqjcrYso8= 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 1756387473426880.3551958343687; Thu, 28 Aug 2025 06:24:33 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 974DE44207; Thu, 28 Aug 2025 09:24:32 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 71FEE4443D; Thu, 28 Aug 2025 08:56:52 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 35998440A0; Thu, 28 Aug 2025 08:55:16 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020113.outbound.protection.outlook.com [52.101.169.113]) (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 D366044083 for ; Thu, 28 Aug 2025 08:55:09 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEVP281MB3430.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:91::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.16; Thu, 28 Aug 2025 12:55:06 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:06 +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=lxVKzOgH5OtQpkmTZ3pzsdnaaVOOv//anQY+qDOtD9WNQmfJU7R6riXrPI7rAAhV+JUB2IDmyTpzswOXFRXsWAgaVHPml1z3VObsAMpFQw76NqeLZ5hHOHQYw2whiPMo45ENxiedXRiqzKNFH6eEc6suMtvETJw0zMmjVC0Ne4h444ZuM0vfgHE70aj9Zyje5fg0qZyhx8zMlRf8GMQ2VTsnikX+ZNVDgOCpnidprGLMFyEeFGyXpax66rZrO8QSu6YVnaDoQY3hrMrywU/V0rnNy4PJGzZp6wtJLLpXq1Pi6v+m7wjKpqWWEah9oaGzQyIxvJlz+2rZoAiqDlsjRA== 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=Y0CBwNd4Bjul1Ry2LVq/2AfhT3iTgpUtVjbrLuu9YO8=; b=rEeq7LI/LyttkEOy1dKhblQjBF/jAxmB11zw/QYbtFTpsBkp7tfkrMbByY9CZ/9PzsVe0yu07Bg3sKacgizAg3MJKbuN7uyx9G5cCAOerbYN2U+L56ENfnkWOeull2F6RjWFiu6sf89uuguUFP7No1WnY9btuLQ58wIxNN1nWh3Ksq9xzZn0zUSaHr8lCrUqKCzsMuRTTEn5HO+KNiUaHvlLk/cLweF0ptpFi5EjML+1FxLS/x1rd3f2dGBzVduDZNP0tEOZ0K+pbDUgeu3irU762CR1qT1kV/O+/47pydhnVz1GgKpmdLI/5VMWsswT84ECGm4LUnqvYxzUBx+qUA== 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=Y0CBwNd4Bjul1Ry2LVq/2AfhT3iTgpUtVjbrLuu9YO8=; b=OC/M3cODO6NNqbDmFGMnxvUqZWxuYY5WuH1Gnayh2WZrCe6ymGknBmB4iBo90l/TUF67kOPpD+MbzPSurIh0v8n1KlAS48JioEW3+FzmFpZrtX+jt/o+skgSoZDG61rZZt2Rw38CKRYlwtJKEWQ/ZFMXfCLPew8ZxpWm2bizeLBmHt230cyvPFEb/fBwtF/Gfrrb+lvI3tEA5vdYBl0GJWhjurTlOW3eKPclY5ytWgkbfgVwCRW1ZpiH+mXgMAnSWfcQSXt6GPBiHbdF+gonVi9P1Huun+KxwAhAkZ1NRPKgdiR+xTJDrQouonezBe3ZBhkZH0tPYDrr16sCIiFAQg== 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 11/13] ch: Add virCHMonitorRemoveDevice function Date: Thu, 28 Aug 2025 14:54:51 +0200 Message-ID: <20250828125453.202358-12-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEVP281MB3430:EE_ X-MS-Office365-Filtering-Correlation-Id: ff479ede-c72b-4b24-e87b-08dde6321c47 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|10070799003|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?ROGLM93L1Gr07ni48G6Go6LqtyeM2knlQe+HGoYicKeNqAbVlfIhnG6pKFQX?= =?us-ascii?Q?f5ErQQNPGr6gHE0j4tyDkqwZBEq5rfHSt/b7vRoiFpGbNQzVeSRtXx43NLzK?= =?us-ascii?Q?TM7qHVtzRRN8MvjZ1MYymQR7ga45FRtiJGLY26+CN23YbSGCme8itAPNaLMd?= =?us-ascii?Q?i8We6vClYBhNguJ1XxJI7ieJJHu+u1gYJKV4IHJfy/Y3v8+9X9yqKwO4/1gt?= =?us-ascii?Q?Rp6tgT/RjugeLVxtlkcoPsUU8eh1faPbYQ5sEDhHx8fkQO5zfED+aIVidY86?= =?us-ascii?Q?7t0aSg28mYhdrpOgPs17FEdjfJ42VK3EfX7dKt6eSrvlPHPOtRKhMKuwDjqo?= =?us-ascii?Q?e+WTIxlrTeclvXBfIjYBcwp9J+Clb/ahdwxON+7gcZJlinjHcO+SP90AfeTR?= =?us-ascii?Q?F7qwx46VbJ/FD19q0WY3UiMNYMM+4mjN2ODWIGtGQbvmoIGBDSCBibiuH/gj?= =?us-ascii?Q?rcNNUBdhrOmBToyHM9a8W0f/eURSqtLecFI7sbtYKirkwCYqMyYQz2s7HU9W?= =?us-ascii?Q?n3Yrdfpe69wqtFttsh8q9opiqBcPTe67rI6VZwQMywtNQAQyDQknWDGJ1xlL?= =?us-ascii?Q?Mzi820R4j78Z8pjigYw92fog1sSeWWZs5ibLL11RUDMudFrVLn1sf4AIWO0p?= =?us-ascii?Q?8Bmw7Q7h2a101aJek8tT5Xnne7F0YdfPobEOOR5PbkTa49rTRDGbOP8KbJJ2?= =?us-ascii?Q?zjO5cVEDvS/h/ap+RmaDcCsNwNaH1hdb+cJQX+d0XTzCmeRbjjoyOEBac1A0?= =?us-ascii?Q?mtjfNwuXBipYOSZG//JQqi5gV5TLBNM31yevMDQY9Sty5O+256EzWtJwMqfX?= =?us-ascii?Q?pSyUGeyMrhVAnCEDvnn2zv/l+bUIoiNeDESfhOkIKUWNLgfeoAc8ET4VVsB3?= =?us-ascii?Q?Y+Ifho/eoclbTIcPxVNvhJTIf9TV7g9yVli5JXJmfQ8+W8VXHil/pWLrkjYB?= =?us-ascii?Q?L1vi/f6mW4x8Ep/JlfWO6XU8cT6gJyh3iGvpdom03R+Pp6iJs+wnMgt4uS7V?= =?us-ascii?Q?+IfPj3J6E88Bs4XhkVssDvWxQ4RchlG347Et7XoX7JOBa7K8h87zCvjbuI29?= =?us-ascii?Q?2gc/BhRv4R2Hi8Tmr6MzNKVIPWMKzkO9K4aoaofp+22NzjA1T7WfWD6DEQWr?= =?us-ascii?Q?a/NRplBEkN4hl8Pk1sCsiIZOiOLefQ2/5+oVaMnYnE+XXyKpWycmaIl8Xq6q?= =?us-ascii?Q?ljdnbUyRFk5HvqN9QfyHJdlo3VgJF94Fq+3lS21/ODdc1Ck10OYmJiMeKX+h?= =?us-ascii?Q?P4FTLnpEgEmCsgDTKloh1C0KSjt02CEIi/7xuw0ZTdtLoLkm+IRmuC/9f2Vp?= =?us-ascii?Q?LnWv1XoASljW7FaR/2rL5F4QvwRcUbiwZ6YaaflgD8zqvKZBtfq2NaJL3cCV?= =?us-ascii?Q?D5uF4IuaO4vP/bw/Pg+6Ck7ApKM07AszqhlG81wogamSb9xPIdh4WD60Svfq?= =?us-ascii?Q?gryAkdQB5Fs=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)(366016)(376014)(10070799003)(1800799024);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?I8vxL2OKyE7BWwzgLicauUUzpv/JuqDl3Y4xYaEjTxIoi9XlW1GqH+EIJQ+F?= =?us-ascii?Q?vWkqcAWuPdv5ifjF2Oa1dHFRXCnyuidOW4wJRWTGYA6dc2qOHoLDPesdmyL0?= =?us-ascii?Q?Stnw11vqrPLm+1i36pmatZ7KSwmehFMcZ92+NOCZ3y7yGpV/L0zag3qwhlOb?= =?us-ascii?Q?X2dWYjFhYWJYMoa289NY2ysCD0k1HEIBQgbZyXW4I381Gt8PvXwuVOcw5KWi?= =?us-ascii?Q?qw9dDYYQxwYIkEM1W6OlC5ThOvzMuXqLiKbf6aPIaJgJUcTl95lgzic7eJ2Y?= =?us-ascii?Q?O2SLTylxdy7GAjRBNXUb9P0XjI2nkRpdcIgYopDupXB9tu+2wHNsSbtY3R+j?= =?us-ascii?Q?9M6n0MfMbDZGgXAFgoI2P8J6a294f0j3CINFx7VWjLj+ItaCG3k8UU/W8bsW?= =?us-ascii?Q?jJYmuxjSNiPrJ2EhsP2gWlRfnaW3bNcpl+51RP9kwG4/hbDqTQ5Ail06nfcF?= =?us-ascii?Q?4jQIcTwThVjMpjmdHmhylORfnyZ0uc6MY/FHb1PTh7feg7eKrObGsQN7M9DI?= =?us-ascii?Q?pMTL5q18wEr35SNaDJt9ZwFQx+Sm3Jr3AVNLxK264HRfzm4jSDOMt4wb8htk?= =?us-ascii?Q?XNVUm+bxTRHukGHw1Ml4J4sSdb6p6+DDmT89y2ZYenEvx9oZ67VxOuy4/loM?= =?us-ascii?Q?CSVbWNnF0HacS9eHkyTlHwVOcAk1JC67wHrryPcsNjA5txEs4qTb59GVcvsx?= =?us-ascii?Q?vOXVt+fcuncbZuK4GXlhjiiuQql75yprsM3xA3431dl6kp7LlOgow5Whfkre?= =?us-ascii?Q?O/wnORhDA2570lmXIRE/DWVo/wpIcdx8pHJHEVXi9iFy5/gCzkUl1yiZW5Jb?= =?us-ascii?Q?o3+HAldvUcfFvkVw1iLibaiKSxeMLMiKAOPLD946qZ5jyV+8oP7EsGf+20RU?= =?us-ascii?Q?ehr4zv1Yt7eOXNcI5o+GjLERsP+xmcfvSNKjGvbwmGJPuw+BsjtpnBkvH+y0?= =?us-ascii?Q?2K8cYloGEmVzZb7MXw8aeE59ukDNRMEgCD9y0WSX8JmwTt8khG7jvUMWieGr?= =?us-ascii?Q?aDa/8voAfVbZcdKCHmSLtfBdlGLw3gh/hp/fOnrWjMGLeSE6BG81iqlTTdl0?= =?us-ascii?Q?KLILmqjbRY/EdO3rHKe/fMbnIDhr9iHl7afjPm4KiSZKRMQvrYSYrkJTN3+u?= =?us-ascii?Q?ovblotjO+juh/tsfCNLcHN5J2xdalMGqButdMpiXGh/bXpR3GA/DaldZMWxx?= =?us-ascii?Q?C0Snjsl3el30No6KFdqvjC8D2QlPJUWobT9UxMcbwTjFfAXNi09RP/dNQdEM?= =?us-ascii?Q?XbBBBvtU0p6cs2ZEiv1S6owNQHyFSELhvdHMhZpDdl9R2MmWqHyMEU7T/eSX?= =?us-ascii?Q?XwN/OP+LLJPKwSFFkQvjjOj4fk5Fy6qz+FQgia7wtJCgWHqA0sEu725DgYSV?= =?us-ascii?Q?fMA3K3an2/+YlVKnrGapCqyuvsWfswKgrLrOXUVDUqjrBhgTOdspy2e8OXUI?= =?us-ascii?Q?bUymjI2tp+O1wBVbDcRHCJw0jHxRZXkFeqjkMSd4/0VdNBPnXUjHAL0nVXwJ?= =?us-ascii?Q?HaW70wGYbhPBaIGnWIazGy7287DkmJckD4y1esvXatYVT4nV8MLzR/SIOaDo?= =?us-ascii?Q?frGbTSlwrd8379hU3wjdoZ3yooQp7B5pB5EFUCyMjTgSa0TuQhzEfvff/nCX?= =?us-ascii?Q?pO///ncWgW7tgad21+45tMHlC7b0YBngMpOeg8tVhEgHGf57IxhINgo2WT2i?= =?us-ascii?Q?dmvCct+DtPN2LWsIJMdm8F+d4nw=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: ff479ede-c72b-4b24-e87b-08dde6321c47 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:05.5352 (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: 0Mic0jsF9ZRvpQDgqveRPytwMTOhPyXjuEhdvBzhBmLjv8a3bn/0ka3nU3qVVhhmD02CevSvi4FmTbsJQAMpg8+zjKOe+LytDnpqjdBTyTkSrjkoYC+pZ+mPylRbtklP X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEVP281MB3430 Message-ID-Hash: MPXMNJU4JEKE3KHFIGHALIPX3EA45R3T X-Message-ID-Hash: MPXMNJU4JEKE3KHFIGHALIPX3EA45R3T 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: 1756387475338124100 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 | 17 +++++++++++++++++ src/ch/ch_monitor.h | 3 +++ 2 files changed, 20 insertions(+) diff --git a/src/ch/ch_monitor.c b/src/ch/ch_monitor.c index 8968d84a71..2e21823f08 100644 --- a/src/ch/ch_monitor.c +++ b/src/ch/ch_monitor.c @@ -596,6 +596,23 @@ 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); + + if (virCHMonitorPut(mon, URL_VM_REMOVE_DEVICE, payload, NULL) =3D=3D N= ULL) { + return -1; + } + + return 0; +} + 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:51:06 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=1756387400; cv=pass; d=zohomail.com; s=zohoarc; b=AZrkZF0bVUhDP1E2G38LdfX1g+TWrRHVfEKHDkqXRXpKJa79PvNyfa1lORN4NcCuQfASoeKya7P5xaQZHKCNa2KbluNTqW3WcMJul6rclUEez4UG7zwi9ejECudUct998WecxsY0ceJmOJexw4K7hUhyMm+YK/iW6cy92ifYF/I= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756387400; 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=cGzVuFEDq3zpQuqKo63NwtB6T4InNXs1DysUjk9c6bM=; b=H6rovVlaB9hw2tbM+d1/3F9q0+JJ0oDBTcIQd5ocBRD4TBrmD8iZy5iz7MmayECJkEh5fpBozgik9VsgprJSI8C+bEm5yrc3kt41YNJVffTbzJWU2kWnHVfBuprm9GYZsF5gb/bFV3wCoNjjMiomA/3bcQzpUhtWZvihXgrcmVE= 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 1756387400712716.0197578584464; Thu, 28 Aug 2025 06:23:20 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 0525D440F8; Thu, 28 Aug 2025 09:23:19 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 26F4044408; Thu, 28 Aug 2025 08:56:40 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 6076B440DB; Thu, 28 Aug 2025 08:55:16 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020075.outbound.protection.outlook.com [52.101.169.75]) (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 49E7244084 for ; Thu, 28 Aug 2025 08:55:08 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEZP281MB3073.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:74::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.14; Thu, 28 Aug 2025 12:55:06 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:06 +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=dcPpUhij5uGtirQLgrYRTRJrD02m6FaRYfGu9kKXxtzGqH81FqpP0pk1RPWoHJL0tfc+WJ0HB7jA1hdIn0ShFAbzF9rqmrHvB3/qr0uzswtTh5vTQH9vbrr/TVVFYP270uWvbrayp52D3hZ6Cvr1Zwv5YQBoddmgd6+5oHZeE9v2FNUwb8kUHs6NmUYE1KDXfVsr1qXclf6wJ7zZUSpxqoVlWprg8wTqCdDncf7iL4ZG80pML1ggTNO3R1zmi+xsz/WKjxCQxDx00yNHQJgkFKsJtK6te1/FVQnWRwbuhxP6NJloppI2XK0z7sqy/SNPawmi2rMCpNwsQd/FZLwkwA== 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=cGzVuFEDq3zpQuqKo63NwtB6T4InNXs1DysUjk9c6bM=; b=aC7qF4BNH4SDc0j2+hKiFAlRDZf7+fbpliLyCt+y2DOie9fWXd2Fbxi8IJho2+Nrv5DK+duEz9nTT27iAgnrWJOazZdxb2Y+8Ybo8TgyBQhuhKs61LycswnabuUVtu+aXZKOXEeN2ObYROlQYybDWqczVPQPTZ0kcFesP3YUQ7F7om3a4+TiFBWje1JSznody44L+3eQt15mFnZ07I4RELoVBolybLj+2f2mIpTQ5BAcedS2NLRdVgAT4xsSa1mpXlUL7tYfWajLybjngyy2c3OMcZLf4U3M45gRtOZCXbuwFerJaeWtb3FLaXfS8IY6kSK22ADmXF8BFrnA3C2ztg== 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=cGzVuFEDq3zpQuqKo63NwtB6T4InNXs1DysUjk9c6bM=; b=AjNz/i9hFBvimccX+k2kLMXJPfWB0rizdMUQiwsKmpFYyzBvHhvL/pNR6kNXMMG7zXL0OnA4bc3/sQWK9PgqTHfcniIefQDFc013VbI0YE6l10/ujmzVvm0/MWahNBYaYQLmAKTx4YHIDcbIt4QGXtjw3lCOQg/3NK8WIg5r0YwpsOyvMoWyoE2KxchTs510o0teN8FSNAIU0TRbT6jQjmPdKD08ny5y4TnnpxC9GOTBhcXYs5McSmJ7uO4P+OZCugDzCw+T6AnduNl87E2YIXBz57bXezcVmPQCHGKbw6tw72Kcd0K2wDfQa+o6imooydFq2nqvNCAnp9ZsqSyNAA== 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 12/13] ch: implement disk device hot removal Date: Thu, 28 Aug 2025 14:54:52 +0200 Message-ID: <20250828125453.202358-13-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEZP281MB3073:EE_ X-MS-Office365-Filtering-Correlation-Id: 1ac75301-5af6-404e-1a39-08dde6321c9a 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?6Asz+ESFi1j7pU/kKF93cy6ehh3xjHq6r+kvU4qtGoasDxsZNK8cDaFgnAmI?= =?us-ascii?Q?khfQleV11woBZby7oWo2NoJW+K2aVNrvfun8Ch14Y4LeMPSZ2kXHjucfsI3V?= =?us-ascii?Q?LI7MW/Tcp9TiOR3LH4grsIVanVVCcNDAM1tYEfRODJGCL2RHs9HN0u+P7GBN?= =?us-ascii?Q?TQNspNAxUSmauVj6lGkedEDUoVpsEEZbS8IH66lziZzVbHuZg1e2FgGJib2c?= =?us-ascii?Q?xL6mQFUQDKMPcJp/KFBBqS0pGv8mCYdlQnz82SXuv7ooctMBSLCQw4YympLr?= =?us-ascii?Q?BEbs8IveQWuaqUwWP7trKuy3mD5dmLdDqGs0uyCqgMsHtiXrqlcqgdOBCkH0?= =?us-ascii?Q?GKqgsdd1KM1rw762fhRE+64AUiwjTiKA8/gIMqPhW0xMBJig55cQI0A7mXPW?= =?us-ascii?Q?a1JJfFnS5kraC91MiPtP78rkpYQ0LreZERavYoSXwLr3upR1poCLAZBJUon+?= =?us-ascii?Q?fpAsW+EAjNAe0wv7EhBOqcx1a1s0SV+364vYn1TdtPfLYgIYfm9d2ouaoQRX?= =?us-ascii?Q?BhLfonj81fwshdZ0aHsy+mHo3IHpKAIwoSm0jUgCQ2YoorXP6YX2cClevUhX?= =?us-ascii?Q?O4wWBnmkKEfRtBFBbxf/ijh9jtB4nWoXRETrLPjDj5mbkJlVPXC5boX7lADA?= =?us-ascii?Q?sg5AKzbCuXMSzojd0p4TCabZMOqk0H1cU8RNaux+ZSx5jtZSrWlvsibnb+6Q?= =?us-ascii?Q?/2opZ3ldt8KcRhTqhUHCnFX1qeW5Bj+lPvohEKzDMcQ1udkT0P16N5A+DGSk?= =?us-ascii?Q?pXFEao0C/3TL+Nd03aRmf767F531DWqz3jDkQxgBtxgFEoJf3Uql62eKk6LV?= =?us-ascii?Q?Q6GqN9zdg3wCok7r/49E8hjxHfcaBJfg1OdbW6SvMb4yj6HkqzWVjfQKOTag?= =?us-ascii?Q?gjoUlyUqX/YEhos/xebi8PBR3/02Vw1bSaXYougHRSEIT1BSVXBpHxXNj2Ey?= =?us-ascii?Q?FxH28NI4KCdnJwe6AW9u+5RAeI7CBj0iew5PtlU1f5ciZg5mRIufvL/gYQal?= =?us-ascii?Q?lEda1r4P7sOgAmWEjkNvnqgucEOQshBKWcxiRJovDCmwo/d6j3+fg19xMrc+?= =?us-ascii?Q?bREe3JR052Kizmqx0vWWYsj3FMVJ28KM+VRkCG0GLvr2xbwaz9CYGYgoRrfI?= =?us-ascii?Q?/TPchljgvHSlmRTrrljhbGZHW7Oa1PbE3XueXPLcwOUcLJbSwKMdcZ+scESQ?= =?us-ascii?Q?CZCgy+poeOz1Oi0ZrhBehCs30D81qaLU3hc5UddmsGaT5MKs2iUQaKZK6cKV?= =?us-ascii?Q?neuz0MRH8fhRrnef0xY5ZVPU1MNNqgpXGrtrjytqBIEWTIgxfUVgj/OD7X1D?= =?us-ascii?Q?sYRSiBA+ZP/Lkduvf/iuPBsJ/eqtK/L+64DeW61n4aZH5u76CzPRfXql7oSh?= =?us-ascii?Q?WczwLaqE0B+4bQw8/CrMRv5U9NGTaxy8a03avdVa6CEjc3d0APucMhAs0x8o?= =?us-ascii?Q?kdNDzLoR3ws=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?ps4fv6KG4UAlSRdVwN/J0rc9C+nmhKgZm+HRJaupCdgaJHpZNHWdNiunUAM/?= =?us-ascii?Q?SgZOtXnv/WwjVO7pP0aB7T2+313O36gnR6RI4B6hhPgiJmaUiv/LTEw7JTp/?= =?us-ascii?Q?c1Tbaw0BQ9B6NIj6p3YHRwC67RSCk8E/1O2Z6gGngiXCpSRoTilGQab6OnJJ?= =?us-ascii?Q?OVReULQv5/TbZzeJZI/4ErMd+EBiIJ3oukqRj/JBDSbfaWangiTzMzc5qGkc?= =?us-ascii?Q?hTReXCSe/FuJuXlcDaHK6Vbm9xLbSthXYRgWS4He/IFbB4/x2vi3MropOcnY?= =?us-ascii?Q?jOIt5Jigsvc95/CEpGC82KNp8vUKRU5Im3LrkynPV5/WXCvcQBVtxBBEVGjT?= =?us-ascii?Q?JyHpClblOwspo93ZXzUFBOTXj5UHfrS7uTPUhLhi9roGwVoEyGlLFHBVrZEp?= =?us-ascii?Q?pWZq8WzVF1APRB59M2x9pXRP3JIluEAzTvl+nVfYYxU+fxC/iFtsFyoZJAFS?= =?us-ascii?Q?fBdi74dOLlogHjVbn+5JzT723EUwNS4okvG4a6f5z/ay2kHnVMT6SFb6UIEc?= =?us-ascii?Q?ZVv+5xr43a94ibw3Aa5iKAG/3aqQ7hEw95DtAklyGBFKquu0qjiMaC49Tj/C?= =?us-ascii?Q?vjT1zhPD1gtdR2BrDMr7iDA7/MBqj3vIbs0lc6Zhny7RVNWUjScnQ+bPJSUN?= =?us-ascii?Q?kR72gcRQkQausdymxPkKqapUutj+s46Ksz5stHXv6qYQAu6fw62v9CoLAw5Q?= =?us-ascii?Q?lyI10gXqq4zM8+6oPD9r60qHSs3O1RSzioSNYx9fJW9GgMqjuAx9iPUE3nCd?= =?us-ascii?Q?YXOCdz43w8BiqGD/3ItQHCJ0GKviOC7rZ+s/fKURwV/6XB6zKM9sSYRetkw3?= =?us-ascii?Q?uwNWY1q3YWn0yoTWp3v2bytlm2bYxeSlX+snGmOxnpYuxSlpu9TuCXlWAZKY?= =?us-ascii?Q?qgf5BrJd5IfBd/AJwYDzU2JTra8iSsJDrc2A/jnPzGFYFNUUmSCVwTz+zdWo?= =?us-ascii?Q?7ULDkskB9nWE7pijfImsE+09Nq6aWUZS7759f2QgDAiC43StshsbuIBu9KWf?= =?us-ascii?Q?SQIESFn302dkBClgYzPtnMG/YSV7bIgs2Sf8MU3+LWrmvnu7w7a29SCNkL/h?= =?us-ascii?Q?exqnpsreOe2J2seWUU+6qPDGUyzqyrsT4xEO04zcLOdwZRDsub4VOGmBRVHa?= =?us-ascii?Q?KOe6lJJbxm7fwhsCRIJy58u04G+I5hVbxQ0Uwh5HPDdhHZR4sjlMz2GXLPn3?= =?us-ascii?Q?2AETJyADNKSMy/MtT2JacvGc0NvLt+XfStWQCXgQnwEeObz7pAZeCk7oSByU?= =?us-ascii?Q?rVu24mU5djAAnu723Mtt1cKzPpto7V7u9MlmRuTFPsHTbFgSMQzpyn7MyTji?= =?us-ascii?Q?zOteBL08V0eQczcRUpUVNtxnS5iXaTIdGJ3O2ktSFmONTA7amvu+8uuCUAu+?= =?us-ascii?Q?HjD1X8itNfMVSxM4iPqRzoXLwH/bwik0hqHPbQR23dM+lDA0DpBOD9tAsCJr?= =?us-ascii?Q?K4vR/yj09YoZ33HZpCNRucu1d+scyk4Nudkr0GoexuOVWNGQ0C8xe9WEOmWR?= =?us-ascii?Q?YMHU1nqmiYSQNne3UhuemV9PuiR44bSOjRl3ZvJzKtXVSa/HjnxTppg8HQ93?= =?us-ascii?Q?YiDG9pNtH+5oJtScV3eTJ/jb4Ns7qDpr9Dr+KTmiTeyZSZFgymZRE01ulWW5?= =?us-ascii?Q?DuqFNwj5YSAiYXPqvMtBhDLmu0dimKPdCBR8SwAU6ol82vFHV6PzXrdDwFhY?= =?us-ascii?Q?VBriA+qsllx/YLX6CwS7PP/2xHA=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 1ac75301-5af6-404e-1a39-08dde6321c9a X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:06.1598 (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: 1xRiCqRh6Q18XKdsQuqxwBsqGmDjjytLrJ6tEbDfEg8taCihIieOY/VSHvXzAvP5dkFNTe/O6hJOBgndGQeyvcKq3Eg99u6ATz5UkVDyQsjax1g8EShQcmeWptNDmYHd X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEZP281MB3073 Message-ID-Hash: JXTG2J46UMYROSHWVKQZFVAX7SMNYSOK X-Message-ID-Hash: JXTG2J46UMYROSHWVKQZFVAX7SMNYSOK 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: 1756387402661124100 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 | 8 +- 4 files changed, 190 insertions(+), 7 deletions(-) diff --git a/src/ch/ch_driver.c b/src/ch/ch_driver.c index 0484201c88..c0e42171ae 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*/, + 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 2e21823f08..2da71e962b 100644 --- a/src/ch/ch_monitor.c +++ b/src/ch/ch_monitor.c @@ -604,13 +604,9 @@ 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 - if (virCHMonitorPut(mon, URL_VM_REMOVE_DEVICE, payload, NULL) =3D=3D N= ULL) { - return -1; - } - - return 0; + return virCHMonitorPut(mon, URL_VM_REMOVE_DEVICE, payload, NULL, NULL); } =20 static int --=20 2.50.1 From nobody Sun Sep 7 23:51:06 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=1756387551; cv=pass; d=zohomail.com; s=zohoarc; b=b/TLgr3FaSiBdAM1GbQhKaVi433aj8d612SpHuJk6nefe4oKgfgsrx9rLlwV5rT19kDHMRjO/CzLHde67OCEbmD8QKQB7/W69fGSyEgG5iJd10qUgX8ayHHC6cVf5gWYVInjMlK8A4wA41M8i6U+yF46Ftf3KYfSnLvbd9hDPk4= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756387551; 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=pgQPOhu9UUmw/GHRYE4ish7om42XlwkGppT+czWJK54=; b=he+Qra2nr8hAlsfT4082YrcTmXSZRiviQ4IM8GrwpL8xm5DcGk3N618reXvVA211ZfQqgta2YZL4bPcegAajxy5Yc206Aqb8V/+KZeuNOH5nMrpHQpi9oM+4EaX87xhMxTUrjeSImcq+ATUoYvtxIX1sj/85L4bqXQJ4sQl6nHQ= 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 1756387551766522.0393130609574; Thu, 28 Aug 2025 06:25:51 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 0F2D4442E1; Thu, 28 Aug 2025 09:25:50 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 713E444483; Thu, 28 Aug 2025 08:57:04 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id EC22A440A2; Thu, 28 Aug 2025 08:55:17 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020113.outbound.protection.outlook.com [52.101.169.113]) (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 1DAC144093 for ; Thu, 28 Aug 2025 08:55:10 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEVP281MB3430.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:91::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.16; Thu, 28 Aug 2025 12:55:07 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:07 +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=RTvscGxS8LUOEEI6TwgyEuGOommqjsP5euUIejL1fKzp4Wj01STUYsOMtjxsbv5LVn10NcD4DSYvs4Zmi7JGgfrjMlj751kfDhilBoG1Jp2Tvo+RQ4aPK4g+XcjxkFPd26sQ10C9oWpncjiSL4Bfh0fy90cDDQOjFh5ZMHmrgQ7I449UQ6f72otaRQZA0wxSSSqF3qNzNc2OikY4ZK4IJV7GZy24gZbzObBEzRVF/PRqx2xV3oijBjw1OSwy1EVrWs6TPjEUHPW+gCqEGStIii19+zmxU8n5g4BR473LjrrhvPTq+gN9zFy03X3ZAhxAQi8CT33EBdApgmuf7aG1Rg== 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=pgQPOhu9UUmw/GHRYE4ish7om42XlwkGppT+czWJK54=; b=oGa4eb4Bo4nxCpwPQCaS4fm155LL3t0FOFGWeSvnkIZTvYADPc2VlDBLpmLFBANgCoGpAHsRrmVze56x0yNr/RY5qCdXI7gXvJXFYluYEEndgq/IeOyPV2sHKZqAaXPUEUlmrqitlau1lJYE2hvYICgG/erCEfAqGxZNRoHKTH04AW3cUEKGNlei0Wg1IrtMkyiqecgIw7VhJumfa42uxAfmMizaj+40AAPEK5CrrEqXP4gO8Escohpbae2QxVxS+jTZjUAkwBLAPM/+JT3UwMlht2kr0VCytZ4x412nEUASlWVT4wqpMeVknSB/BqaU6V/0NpuGj237JAYqoV3w/w== 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=pgQPOhu9UUmw/GHRYE4ish7om42XlwkGppT+czWJK54=; b=hRzQZN1uw347pweMsiUb1Ithjeq6w6L0IBoIU1FP+YlZ82ZPuLlsMEDVmtek7TsxqiaNW1OS73aOSx5Sy+yKqHvDyP/UUTcM/bSEdme3+xOlR4UE1hBj9eyIP1Qr1JVFhECnxn4LUvja+RSlPIfTIrnpxs7IQtcRw0FmAGWcgInobEsIGUjMvyMbUYJ6gZ7FnuLPYM45v+OiU3JA/suT0Zr2ttWt/3ckiySXx25raHzHIPUszFdwFlU6YM1czldY0RTbiJ//cfho1Oqi5MjD8OIRoDkxPRi1ZfVOxt4N1E67Nn9HyzABkSUiKZY/Jnw0HzEMphN4bUm60QHrwax3pw== 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 13/13] NEWS: announce disk hotplug support for ch Date: Thu, 28 Aug 2025 14:54:53 +0200 Message-ID: <20250828125453.202358-14-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEVP281MB3430:EE_ X-MS-Office365-Filtering-Correlation-Id: be685c4f-b4c0-4be1-c705-08dde6321d29 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|10070799003|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?U5t7uZjmDTkiPr3+zuHr+R+3MoK1fagSvl0vLKwJM2d2TSb5+tJmQGy5R7dp?= =?us-ascii?Q?yAiUGwZsWJlMTYyBDWQvW5gJCyCjJ7B6jXpPXcXKf3oZ6xhOwED8ZRULJaDZ?= =?us-ascii?Q?xPeoV4LVx2z1UooUBGMYKGhwj1H1SSDQnHM6Go4j5ntKkPIqLU4hvjzVJ/Rf?= =?us-ascii?Q?ltKRJwtjGFdnAMUbPa2VbqzGcECtdUUoYWBOe6+BmdZLHrdyGVirFPa2OSmw?= =?us-ascii?Q?A+6PQAC4lRhMweG+rcacN+qQLW8FoOm0IkaQB8480UIkvDmCRnIaOMzsry+k?= =?us-ascii?Q?fdqVdmcrIqTpbbI/3vY0U52EvhzJL8rrKP8HCY6+4VtBdu8+Vxlyovo1LVjS?= =?us-ascii?Q?Pj4qG/JjLKOWmvjB6OlWBMS3Sz9+amLeDwiJ85FS0vTPMvKroTE/5pBTvIaZ?= =?us-ascii?Q?+ccyegJHq2MiE63m2z8EC2TT49ZwgKeJyhef57ZXs8aIYKCL0Xx5F9haob+b?= =?us-ascii?Q?2lVukXOS8VSLvMDTe0uF6kRaU0RYLY9lFLvTetdchwD+x2DmK4DOTjw4+/Qw?= =?us-ascii?Q?jEXxO3uBnFY4JnfZclypApKeiK7WD90nddY8SK7AdtUFYI9yx3JjwgH20e/8?= =?us-ascii?Q?mkfjeoEpEK8b9ruXKaaxupnpvnxRTsBqCEby14F+aZLwd1Tmiv7/s4hbyoBn?= =?us-ascii?Q?rNXgbspbVmcxj+WuXsJZks0nLeAqJJibN3lrgGQ6pRmtgM6mICnPk1EbTFed?= =?us-ascii?Q?kU8U2+fRfmHwZQWZcqxawig+yI+TKd1g0ALjbs9Kh65D7Z2GhjhoHmmlTgGJ?= =?us-ascii?Q?ZQl91im1KCpI1yfewMfIpJkV8Mo1//kJyBHaEQCTFKR+bbXEyUGq8mnfUnyc?= =?us-ascii?Q?pFu1p8UuvXJqcwocpRGQlnYa3hOM6VWTjfKShJsSlX6LW9s3eG8VOcXpmPvN?= =?us-ascii?Q?VUebKumSscjpIBijNdneGwHQLDbtmgdIh+3X4tx7JpBGnsA+cqlbTDVxeY8u?= =?us-ascii?Q?D/czqHw1Uc8nc5eRnThX0Oub3p4y0wyRpZSIeviEoK/mfdZXQM5vwTtkJztD?= =?us-ascii?Q?JnW+NLlRZBxyoea6gkesB/0O1XUKhS4hNETNFNwnJ+UqMnsK2sCJik29b9yX?= =?us-ascii?Q?xLBrePMURUYvzMi4ZXlJF24urGo6UCCt8yNzDM6GkuuOzAcRyyuGPhHDqgm7?= =?us-ascii?Q?lN9brHhT/EcFqHkwsEQ7/EuN/JmvsO6N5f+Tcp+vF9i/HgLQGD7N6tz6c51O?= =?us-ascii?Q?oZW3FyaOkKghgK1ZJ0RbnUmzVfIOhnBBa7Z7ErWD/icv9NNHuqZiTX5Fpt4I?= =?us-ascii?Q?xiQ0rr+pXurXvYUB8k1zs6jY4l5/4eU72QA83CR4mKVejcc6pwvthmw9+XZg?= =?us-ascii?Q?1O83khp5h9iPZGfAdXzN09cHRcUu6qF28T92MeUnGyLWDaASdV0M9yv/pcVq?= =?us-ascii?Q?nUcXBNJzjM8P/Ksg7iwjjt9IBR0EaOde55yQ2O6nbh1AfxBdDyzKtZBGU+dK?= =?us-ascii?Q?isgVmLQXdNc=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)(366016)(376014)(10070799003)(1800799024);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?T2tU1Aa039+5WsipiE9al0fMQa+Y6TzF3dtR30bG42MmdR93/j9/WevfRJUs?= =?us-ascii?Q?8t4GvRHFkFWoJENFRYXfyVRD8v5Wj34vaNNQZngBYfsUHD2ea7imoQdh/dtW?= =?us-ascii?Q?t9nVc0DMY9dLIRTM5lcyc3rqvx/RrIpDsyKgnnlXEQUhh/W8vUPUkmRM0UZt?= =?us-ascii?Q?+G646QL2DU+f2Q+SeqTYf00iS7NAHD9Cen2ajqEqUYMBA5RNT24jHj1Bhh8Y?= =?us-ascii?Q?4v5dxnekz3d5wAxit4CvkNRJSpRMqqyJPV2MTIoDd5HU7Dvers1JEOxbnTRl?= =?us-ascii?Q?6ihc21kgCwwdzwRplNqmVJymbFLWbfcZEw2reaFR0rNwdtCLEMKvZtmT30Fg?= =?us-ascii?Q?hUV2kUe7EXVoWkBYrXJwp9v1LYC60n5cnUrTZq6SvrtfYadfl8vW/m7u4U/P?= =?us-ascii?Q?Ddch0m5DXqzhinvUaJDHegbNG1ne2zpLfeTQgAFiujpkSCCn/n+0+tYwAd0z?= =?us-ascii?Q?NUdTAKI+HYcPPNZ9LYTyPIK6fs0jYcBYsx/PX/+zEVmiv/liA2gPBjrdKE5d?= =?us-ascii?Q?VNSav4zjxMvjLHNmsTPwb7nf/Pzgki19nPZbyHKMF0BHXsR4U74WUpLTyRRj?= =?us-ascii?Q?foni1PE4KOmK4brY+xxTBPuaK3SinKwz690TeLMrBoVVTuIGKke+6el4zZVP?= =?us-ascii?Q?tOPiO0K4s9Sj3s5mf1X9jasRmFKRjAwqSjMhJr2AAheqJbCPuEt5/9G6NAc8?= =?us-ascii?Q?juWkH+HvvacR1/wL9Mn5mHBpg0EfOOxT/Uct8XqUhGg1jnKkMT7hjSaeRV/P?= =?us-ascii?Q?oyATTVepGCXTQjDNbfSTIkiTGCSO+d3h2dyHsiJO5nftnDZzryYFC+2VQt7i?= =?us-ascii?Q?WRM6AX7SGMv9bUloCmdrScGFwv0TUA68DfPuFx5VzA4IwN6rZMPUFnlWjFcU?= =?us-ascii?Q?sZwB+aqoB6p7gNuhrfm+SHsVSFlGAWiwUUIGPWYyODG+6GNQSEfHgiuNf79q?= =?us-ascii?Q?aOO6QqyC7RqcLl1T1PQAQF6STcTzGTtLD+va/adVKl4wYex+CMAH2DttIGL3?= =?us-ascii?Q?zxrNumgwdsJmEHyClEbthyK2M1o52g7dpVN0v8cpBWlopuWNhlg/LlazcSQC?= =?us-ascii?Q?XbE0IRX2uW9YXLLN8tkk70yrPJQwUHmKo4/ZjtqRATfE8IX4KQLmUf8qFnO/?= =?us-ascii?Q?aOHgvW6QoBKg80Ot1bOFIVzavf1aL9xAhLN+K5UmRnht0htNtxgnZ48lYZZO?= =?us-ascii?Q?ID77BVa3xDqLgBBHM+tGzrtPIaiNAnCSqLTGATsyPGSXcswxkSD9RzmqfZMO?= =?us-ascii?Q?bo05SeC9Dl/y0CrYc8w38BNpiPW/Esf5xWZyyYFoMu3sND7RnuS9i0rgKwOn?= =?us-ascii?Q?1V3dbrCs2zAfFYbr7iL4xYmDWJL30qTEnvPhRM/BxtZa87irANY/mFk9udSC?= =?us-ascii?Q?ZI+hH3DSnDw+NcpgkmfaWEydfPQRmihe+t0CHJEXswn+V+m2oh2RqVie3gqq?= =?us-ascii?Q?Elcmap4QkEWspdGq56hAGdUguTvFxK3h4Vaiecr5nlzC+CfeVMVP7Jn9ZmGW?= =?us-ascii?Q?1R+jgqFKOi2CnDvcWqn2bry/HiXzy0t/mIx+XKnfPAV2tzmncBWJWqTz8OJ1?= =?us-ascii?Q?wKOyLwKELaFSYPFTvVYWpakZ3Ug8dlw80M7skJ5oItRUFiuBb8FO55cyY+Hn?= =?us-ascii?Q?caUnxnfZBlUCV+xwh/vuf1B0BYaXnBpP9tIaU2S/bvrXuTSJb/o0FEdzhU0K?= =?us-ascii?Q?nmsLA4Voxjjw8/WquMPv4i7rKn8=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: be685c4f-b4c0-4be1-c705-08dde6321d29 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:07.0525 (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: D3Dl9DFtDbsdjnPq9rnX5N4q91UEyFz29xGSXJEwTL1gFGNoYbanf9Re9/dwY90VY4bkW8LgX+KdJXmvIsbCanAjhSjirzyF6FZlpVTCb3evbMuNqpSqnh5XRi/bA2oz X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEVP281MB3430 Message-ID-Hash: J755RMXZVRBD5ZYSMOR2G4A6UOVTKO7I X-Message-ID-Hash: J755RMXZVRBD5ZYSMOR2G4A6UOVTKO7I 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: 1756387554349124100 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 06cbd8d6c5..185d5a283f 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -32,6 +32,11 @@ v11.7.0 (unreleased) The bhyve driver now supports querying domain block, interface, and memory statistics. Not all statistics fields are supported though. =20 + * ch: Disk hotplug Support + + Users can now attach and detach disks of Cloud Hypervisor domains at + runtime. + * **Improvements** =20 * bhyve: improve 'efi' configuration autofill --=20 2.50.1