From nobody Sat May 30 19:26:49 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1777000985986525.445620113387; Thu, 23 Apr 2026 20:23:05 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wG77x-0002Vd-D2; Thu, 23 Apr 2026 23:22:49 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wG77u-0002V0-Nc for qemu-devel@nongnu.org; Thu, 23 Apr 2026 23:22:46 -0400 Received: from mailgw.kylinos.cn ([124.126.103.232]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wG77r-0003OE-SX for qemu-devel@nongnu.org; Thu, 23 Apr 2026 23:22:46 -0400 Received: from zgh-vmware-virtual-platform.localdomain [(116.128.244.171)] by mailgw.kylinos.cn (envelope-from ) (Generic MTA with TLSv1.3 TLS_AES_256_GCM_SHA384 256/256) with ESMTP id 1632755129; Fri, 24 Apr 2026 11:22:32 +0800 X-UUID: d513392e3f8c11f1aa26b74ffac11d73-20260424 X-CID-O-RULE: Release_Ham X-CID-RULE: Release_Ham X-CID-O-INFO: VERSION:1.3.12, REQID:9d7b8465-2aa5-458e-b342-351e89cb9648, IP:15, URL:0,TC:0,Content:0,EDM:0,RT:0,SF:-30,FILE:0,BULK:0,RULE:Release_Ham,ACTI ON:release,TS:-15 X-CID-INFO: VERSION:1.3.12, REQID:9d7b8465-2aa5-458e-b342-351e89cb9648, IP:15, UR L:0,TC:0,Content:0,EDM:0,RT:0,SF:-30,FILE:0,BULK:0,RULE:Release_Ham,ACTION :release,TS:-15 X-CID-META: VersionHash:e7bac3a, CLOUDID:639d7f9ebd27ebedfecce2e0c1bf2faf, BulkI D:260424112235587BITV7,BulkQuantity:0,Recheck:0,SF:10|38|66|78|102|123|127 |898,TC:nil,Content:0|15|50,EDM:-3,IP:-2,URL:0,File:nil,RT:nil,Bulk:nil,QS :nil,BEC:nil,COL:0,OSI:0,OSA:0,AV:0,LES:1,SPR:NO,DKR:0,DKP:0,BRR:0,BRE:0,A RC:0 X-CID-BVR: 2,SSN|SDN X-CID-BAS: 2,SSN|SDN,0,_ X-CID-FACTOR: TF_CID_SPAM_SNR X-CID-RHF: D41D8CD98F00B204E9800998ECF8427E X-UUID: d513392e3f8c11f1aa26b74ffac11d73-20260424 X-User: zhaoguohan@kylinos.cn From: zhaoguohan@kylinos.cn To: John Levon , Thanos Makatos , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= Cc: qemu-devel@nongnu.org Subject: [PATCH] vfio-user: avoid leaking duplicate device name Date: Fri, 24 Apr 2026 11:22:09 +0800 Message-ID: <20260424032209.297458-1-zhaoguohan@kylinos.cn> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=124.126.103.232; envelope-from=zhaoguohan@kylinos.cn; helo=mailgw.kylinos.cn X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZM-MESSAGEID: 1777000988189158500 Content-Type: text/plain; charset="utf-8" From: GuoHan Zhao vfio_user_pci_realize() assigns vbasedev->name before connecting to the server, then assigns the same name again after installing the request handler. The second assignment overwrites the first allocation, so only the second string can be freed later by vfio_device_free_name(). Drop the duplicate assignment and keep the first name allocation, which is also available on connection failures for error reporting. Fixes: 36227628d824 ("vfio-user: implement message send infrastructure") Signed-off-by: GuoHan Zhao Reviewed-by: John Levon --- hw/vfio-user/pci.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/hw/vfio-user/pci.c b/hw/vfio-user/pci.c index facc79727acb..e7573d4a9f08 100644 --- a/hw/vfio-user/pci.c +++ b/hw/vfio-user/pci.c @@ -280,8 +280,6 @@ static void vfio_user_pci_realize(PCIDevice *pdev, Erro= r **errp) vbasedev->proxy =3D proxy; vfio_user_set_handler(vbasedev, vfio_user_pci_process_req, vdev); =20 - vbasedev->name =3D g_strdup_printf("vfio-user:%s", sock_name); - if (udev->send_queued) { proxy->flags |=3D VFIO_PROXY_FORCE_QUEUED; } --=20 2.43.0