From nobody Mon Dec 15 21:29:31 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=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=pass(p=reject dis=none) header.from=lists.libvirt.org ARC-Seal: i=1; a=rsa-sha256; t=1751483749; cv=none; d=zohomail.com; s=zohoarc; b=UG1Khzttf3HMmRu1upOFYdW6zbpNPSfQjj56ut53FTwiO8wIogcMhXeDbDutpSoTiL75EFt51AxLX+RGlhHF07EYA8vPNFT7q9MAD9+zmJ2NH0H/fHSabaAEB57htxVyGWbZ072V3ZlgDPwcO69OVJIMVt1xPpE1xrTFV+kDxBo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751483749; h=Content-Type:Content-Transfer-Encoding:Date:Date:From:From:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:Subject:Subject:To:To:Message-Id:Cc; bh=EBL2QF4oZydeWlRCWSEmN8nCu6QfpNOHWS2jtVxnPNM=; b=diKvYDMVf5yih8SrlErfleuZldLXMmJ7fCaJhlLVZ56PrGM+g5BaqFC9wSTofXFio+VzuGc9C83LUrZ+zqPpBFUZiQ0e3wDBGD+Zewe2jcKXNjiiNB8pIwbcEs5TLFL8OSkAWrpdNQ6bX8HsdFtYOvZPG/a5rMqImBlXI6QNWBc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1751483749323956.9209738513197; Wed, 2 Jul 2025 12:15:49 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 996) id 6964811DA; Wed, 2 Jul 2025 15:15:48 -0400 (EDT) Received: from lists.libvirt.org (localhost [IPv6:::1]) by lists.libvirt.org (Postfix) with ESMTP id C9E5911B3; Wed, 2 Jul 2025 15:15:28 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 996) id BE50A11A8; Wed, 2 Jul 2025 15:07:09 -0400 (EDT) Received: from sendmail.purelymail.com (sendmail.purelymail.com [34.202.193.197]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 8C23DE8B for ; Wed, 2 Jul 2025 15:07:08 -0400 (EDT) Received: by smtp.purelymail.com (Purelymail SMTP) with ESMTPA id -1185876402 for ; Wed, 02 Jul 2025 19:06:00 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.4 X-Greylist: delayed 66 seconds by postgrey-1.37 at lists.libvirt.org; Wed, 02 Jul 2025 15:07:08 EDT DKIM-Signature: a=rsa-sha256; b=JHlhK8fNBT/krvgJ6MXBz7FnAu1LYqXiOGfmZWEPtlT+le4h3CYkrEidtyTcZC6USgSmJVCh6IXMdGRI5K2iavaR7zBUq0rcY4mG4KZO5dJTCrE2bppk+Sfaz+kecyklJXnGoJ/m33iX23u07WfmlDMS/kjxa56loN+kBrhJXvpx4BS/FLNzSrpRS9MwnkLQIl9NdwH/dB5N/oseU+gq39t69IJV+zgstmDNPY1Cd7KvVxTb9zyt4sKFU8YFziewMGcmEhy/n98QKPgr935rOETpCq3yMYbRsy6S1udd/1OrHxK016hARrE2KASRZ786G9A9Vc5y465qrOBg3el/bw==; s=purelymail2; d=purelymail.com; v=1; bh=rockSCVRnI2gqkPbtSF4E/fpT3m46x+BboGHSAMbpa4=; h=Feedback-ID:Received:Date:From:To:Subject; Feedback-ID: 141843:14987:null:purelymail X-Pm-Original-To: devel@lists.libvirt.org MIME-Version: 1.0 Date: Thu, 03 Jul 2025 00:36:00 +0530 To: devel@lists.libvirt.org Subject: [PATCH] virdevmapper: Always use device name for finding targets User-Agent: Purely Mail via Roundcube/1.6.11 Message-ID: <43c1515328aa2000d3d502011291b81e@purelymail.com> X-Sender: bhavin192@purelymail.com Content-Transfer-Encoding: quoted-printable X-MailFrom: bhavin192@purelymail.com X-Mailman-Rule-Hits: nonmember-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-config-1; header-match-config-2; header-match-config-3; header-match-devel.lists.libvirt.org-0 Message-ID-Hash: LQ7H4SFUCU2ZQDDRY53GRD24EDFBTOUY X-Message-ID-Hash: LQ7H4SFUCU2ZQDDRY53GRD24EDFBTOUY X-Mailman-Approved-At: Wed, 02 Jul 2025 19:15:26 -0400 X-Mailman-Version: 3.2.2 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: From: bhavin192--- via Devel Reply-To: bhavin192@purelymail.com X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1751483751505116600 Content-Type: text/plain; charset="utf-8" From: Bhavin Gandhi DM_TABLE_DEPS expects a device name in dm_ioctl.name. In one of the cases, full path of the device was getting returned causing the ioctl call to fail with `ENXIO (No such device or address)`. Also rename the function and variable names to better reflect that we are dealing with DM device names and not paths. This got introduced in 22494556542c676d1b9e7f1c1f2ea13ac17e1e3e Resolves: https://gitlab.com/libvirt/libvirt/-/issues/790 Signed-off-by: Bhavin Gandhi --- src/util/virdevmapper.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/util/virdevmapper.c b/src/util/virdevmapper.c index d0eae671ab..42c86d89cf 100644 --- a/src/util/virdevmapper.c +++ b/src/util/virdevmapper.c @@ -164,7 +164,7 @@ virDMOpen(void) =20 =20 static char * -virDMSanitizepath(const char *path) +virDMGetDeviceName(const char *path) { g_autofree char *dmDirPath =3D NULL; struct dirent *ent =3D NULL; @@ -205,7 +205,7 @@ virDMSanitizepath(const char *path) =20 if (stat(tmp, &sb[1]) =3D=3D 0 && sb[0].st_rdev =3D=3D sb[1].st_rdev) { - return g_steal_pointer(&tmp); + return g_strdup(ent->d_name); } } =20 @@ -219,7 +219,7 @@ virDevMapperGetTargetsImpl(int controlFD, GSList **devPaths, unsigned int ttl) { - g_autofree char *sanitizedPath =3D NULL; + g_autofree char *deviceName =3D NULL; g_autofree char *buf =3D NULL; struct dm_ioctl dm =3D { 0 }; struct dm_target_deps *deps =3D NULL; @@ -233,10 +233,10 @@ virDevMapperGetTargetsImpl(int controlFD, if (!virIsDevMapperDevice(path)) return 0; =20 - if (!(sanitizedPath =3D virDMSanitizepath(path))) + if (!(deviceName =3D virDMGetDeviceName(path))) return 0; =20 - if (virStrcpy(dm.name, sanitizedPath, DM_NAME_LEN) < 0) { + if (virStrcpy(dm.name, deviceName, DM_NAME_LEN) < 0) { virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", _("Resolved device mapper name too long")); return -1; --=20 2.49.0