{"id":2220509,"url":"http://patchwork.ozlabs.org/api/1.1/patches/2220509/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/patch/20260407-treewide-fixes-v1-12-66c9744a56a3@oss.qualcomm.com/","project":{"id":42,"url":"http://patchwork.ozlabs.org/api/1.1/projects/42/?format=json","name":"Linux GPIO development","link_name":"linux-gpio","list_id":"linux-gpio.vger.kernel.org","list_email":"linux-gpio@vger.kernel.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20260407-treewide-fixes-v1-12-66c9744a56a3@oss.qualcomm.com>","date":"2026-04-07T12:50:03","name":"[libgpiod,12/14] tools: gpionotify: don't leak info returned by gpiod_chip_watch_line_info()","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"6052ffc11b7c76fd50a6dccfe7679652d588f8b3","submitter":{"id":92196,"url":"http://patchwork.ozlabs.org/api/1.1/people/92196/?format=json","name":"Bartosz Golaszewski","email":"bartosz.golaszewski@oss.qualcomm.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linux-gpio/patch/20260407-treewide-fixes-v1-12-66c9744a56a3@oss.qualcomm.com/mbox/","series":[{"id":498978,"url":"http://patchwork.ozlabs.org/api/1.1/series/498978/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/list/?series=498978","date":"2026-04-07T12:49:56","name":"libgpiod: assortment of fixes","version":1,"mbox":"http://patchwork.ozlabs.org/series/498978/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2220509/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2220509/checks/","tags":{},"headers":{"Return-Path":"\n <linux-gpio+bounces-34799-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-gpio@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=qualcomm.com header.i=@qualcomm.com header.a=rsa-sha256\n header.s=qcppdkim1 header.b=OHI6WDvc;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.a=rsa-sha256 header.s=google header.b=djjTnr5f;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c04:e001:36c::12fc:5321; helo=tor.lore.kernel.org;\n envelope-from=linux-gpio+bounces-34799-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com\n header.b=\"OHI6WDvc\";\n\tdkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.b=\"djjTnr5f\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=205.220.180.131","smtp.subspace.kernel.org;\n dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=oss.qualcomm.com"],"Received":["from tor.lore.kernel.org (tor.lore.kernel.org\n [IPv6:2600:3c04:e001:36c::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fqmKg327Rz1yGf\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 07 Apr 2026 22:51:35 +1000 (AEST)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id 7D05A300CCB0\n\tfor <incoming@patchwork.ozlabs.org>; Tue,  7 Apr 2026 12:51:32 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 2A9793B52E3;\n\tTue,  7 Apr 2026 12:51:32 +0000 (UTC)","from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com\n [205.220.180.131])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id BBAC23B47D8\n\tfor <linux-gpio@vger.kernel.org>; Tue,  7 Apr 2026 12:51:30 +0000 (UTC)","from pps.filterd (m0279873.ppops.net [127.0.0.1])\n\tby mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 6376enOb1403541\n\tfor <linux-gpio@vger.kernel.org>; Tue, 7 Apr 2026 12:51:29 GMT","from mail-qt1-f200.google.com (mail-qt1-f200.google.com\n [209.85.160.200])\n\tby mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4dcmr8asaj-1\n\t(version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT)\n\tfor <linux-gpio@vger.kernel.org>; Tue, 07 Apr 2026 12:51:29 +0000 (GMT)","by mail-qt1-f200.google.com with SMTP id\n d75a77b69052e-50b34223670so225304181cf.0\n        for <linux-gpio@vger.kernel.org>;\n Tue, 07 Apr 2026 05:51:29 -0700 (PDT)","from brgl-qcom.local ([2a01:cb1d:dc:7e00:b36f:5370:5f91:2d5])\n        by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-4887e83682fsm577526505e9.7.2026.04.07.05.51.27\n        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n        Tue, 07 Apr 2026 05:51:28 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1775566292; cv=none;\n b=K1tJDHOoQTiHGH0xQ3VPoTuMHQA0LTC8trR/FOEcDl+Q61Vpw1hYaZX17v7gLIdyMrMPPEg3d3QW6FoOEo2tIKwew17w8Nlq/XZIvhtstt3VGePuuX3b+MGIh0UIss5CxXK/YP9JrOWXEfltk5lU9BMGsad1NktqyNXBFGFPLdc=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1775566292; c=relaxed/simple;\n\tbh=3sQe9mi1R84kn1S5P6eAQTRJjHrtTegMGZWpWubejoo=;\n\th=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References:\n\t In-Reply-To:To:Cc;\n b=mkGkgtnJ8bHApG7BOgxY/ErfTZzhjVsrKnVcqEBbPacA46oT3KX2TKGsQ+un6/b7n2FsWiIZPtE+BpS6qFBojXlDV9PznYy8oEa/NkxoUzbZQWgE9pg1DBFSFxc6HkShvlPh1OEWesvv/v8n5ujAauHA7LMBWNljppBvImACDow=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com;\n spf=pass smtp.mailfrom=oss.qualcomm.com;\n dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com\n header.b=OHI6WDvc;\n dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n header.b=djjTnr5f; arc=none smtp.client-ip=205.220.180.131","DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h=\n\tcc:content-transfer-encoding:content-type:date:from:in-reply-to\n\t:message-id:mime-version:references:subject:to; s=qcppdkim1; bh=\n\tXhK/MXTizOmi0hghhO++7qsAi2bAkG5EBUY5fe6dVRM=; b=OHI6WDvc7Y0Mdt1p\n\t9lWjfI6jN8uSOuEMqz/I2bzqbLGAbZMrwpjLB+WHTivBwcyM74lnW1UD5O3HxZCO\n\tTTC7u8zF+rv3qKydvP/MmbDrS75XbWzv0jfolPeNi9rWLdbnYQ+SkPTupcq497jC\n\tp0PHrjJMrMjp+wBDCgxE0CqV5vT0v/yktq0YdEOA+glCdgpI3qTNBuzywviMBMF9\n\tTGlu7rZbHIY0itCxRJJUKUZqqW24O40djDipDlvFNfqb3E2SjG8VrsvLVxJwYHaq\n\tPt6X/Pne+HkHEqKYUy+Tb+YZ+uGf4taVrzQ0B8yE6BTel03oKvnw1G9eIUbhGj4G\n\t2sLC2A==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=oss.qualcomm.com; s=google; t=1775566289; x=1776171089;\n darn=vger.kernel.org;\n        h=cc:to:in-reply-to:references:message-id:content-transfer-encoding\n         :mime-version:subject:date:from:from:to:cc:subject:date:message-id\n         :reply-to;\n        bh=XhK/MXTizOmi0hghhO++7qsAi2bAkG5EBUY5fe6dVRM=;\n        b=djjTnr5f+coroCxqfSOkfGZ2nflfFjA3TdquU6E+8Bpk1i7s8RsIJia3mJgO8jZdR8\n         0VCGobppfS47YFSHh78VtI0Gq2mSmjyKnnsSDdJepLHDl0hkMAEHqqFMS6DUbTGam9WZ\n         4noYM8ltrgPKy1N6vgQtSD0PtbQacqqsFnprSddW+5YOk12r2Yi0Q4YHuK5H87DSo+YN\n         gjin63rhKLux7EKeKzV1w2HlFYPzhoFlbywrhVancWyXSA7dPQX13ReQRwSuqbD90Jwq\n         FLtNBF4xucMPiOgZ+73K3NwLHnBw5qh5RWqRkGN7w78tLh4OmV7SMGLAd8bp8PBDiLDH\n         v/RA=="],"X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1775566289; x=1776171089;\n        h=cc:to:in-reply-to:references:message-id:content-transfer-encoding\n         :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to\n         :cc:subject:date:message-id:reply-to;\n        bh=XhK/MXTizOmi0hghhO++7qsAi2bAkG5EBUY5fe6dVRM=;\n        b=YIAlfQx+t9UmYf9EUABzg7n7VO+H+iBCpPovhiD7FHPu8G1BoekKWJNnGSdDOb1KoB\n         64cDR6n0K+Fgcqa1P1c1YfW+sE4sFGiYBOaTDG1rUJ4MGLD9Ng1c4PFYTYuzmOd0O0Ra\n         2ImUzpf/AL77Yj12GsQ75T38z9UrRDIfv8AcHUBBBKiRnVCiFzBu+4J4xSilzkrQyLrt\n         4VTQ8FYVmLnWpNJtg55eHKid2EErsOAVEUC6t18vyvGSREtEbmW7VJ/jBkZbyg2XMj9Y\n         fyhMGdVnUr71r7y1EbSs22RRlo7vm83742PcB053DsdWiU27R81g/lSfpJZwPLSAW1Go\n         kn7Q==","X-Gm-Message-State":"AOJu0Yzwij67z22YjExf8h29ITrR8Ck5F65hhMBnjdxdcNF4tz6U9qb8\n\t4hopx6pHtJ9wSEaUK2WCy9NdcfTueYglOIavBVHPHp5mGwdo2BN+kkOnoHerCgYtJfzTGfbJrCc\n\tztXBJ5AvKwg3HoKohix9DPgsqsn215SX/1UeNzLmRLFSwET3nZ23mAKUqSxH/yPj6","X-Gm-Gg":"AeBDiesDYJ9hV3YkhbCjkYhrzLXCqgwtg7/S2nVJb107fDFKa/49+pYkY9DPRgfvTL0\n\tQXtRvb692rYXszQ4V99B61hp4EHpHU8Q3qLfaFH3yS8GdmSbcnwiahSb1cmEYOtyCLW0TPNd+l+\n\tuBv7QcYV24CkS9IRh0gZys/+BFt8Bki+C2RC64s1gEQwVg4N5Bjm1rrapu8wXzWIOZjWRjIofYS\n\tiiWRaTzZW8fo3Kh/SwRB2ibi5O50Ao7kRmYK/pbs9jOq3zf/oRyEABZGcTtfedAPBvDYuYeuHkb\n\t9bzTe8PU9dPnOiNlxtgBdZbf3gEuCgH6lSGKLtkZsRXYjWK3Em7zKTib1NoLdeIMlI2a+r68ptK\n\tz2QlrtyrVujrCxWq6GHbqLZuMvfXGFquM58vQcQUER8dxThTQK50=","X-Received":["by 2002:ac8:7d15:0:b0:50b:3a6d:db64 with SMTP id\n d75a77b69052e-50d62ae96camr255017081cf.48.1775566289189;\n        Tue, 07 Apr 2026 05:51:29 -0700 (PDT)","by 2002:ac8:7d15:0:b0:50b:3a6d:db64 with SMTP id\n d75a77b69052e-50d62ae96camr255016781cf.48.1775566288809;\n        Tue, 07 Apr 2026 05:51:28 -0700 (PDT)"],"From":"Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>","Date":"Tue, 07 Apr 2026 14:50:03 +0200","Subject":"[PATCH libgpiod 12/14] tools: gpionotify: don't leak info returned\n by gpiod_chip_watch_line_info()","Precedence":"bulk","X-Mailing-List":"linux-gpio@vger.kernel.org","List-Id":"<linux-gpio.vger.kernel.org>","List-Subscribe":"<mailto:linux-gpio+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-gpio+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"7bit","Message-Id":"<20260407-treewide-fixes-v1-12-66c9744a56a3@oss.qualcomm.com>","References":"<20260407-treewide-fixes-v1-0-66c9744a56a3@oss.qualcomm.com>","In-Reply-To":"<20260407-treewide-fixes-v1-0-66c9744a56a3@oss.qualcomm.com>","To":"Linus Walleij <linusw@kernel.org>, Bartosz Golaszewski <brgl@kernel.org>,\n        Kent Gibson <warthog618@gmail.com>, 4fqr <4fqr@proton.me>,\n        Vincent Fazio <vfazio@xes-inc.com>","Cc":"linux-gpio@vger.kernel.org,\n        Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>","X-Mailer":"b4 0.14.2","X-Developer-Signature":"v=1; a=openpgp-sha256; l=1602;\n i=bartosz.golaszewski@oss.qualcomm.com; h=from:subject:message-id;\n bh=3sQe9mi1R84kn1S5P6eAQTRJjHrtTegMGZWpWubejoo=;\n b=owEBbQKS/ZANAwAKAQWdLsv/NoTDAcsmYgBp1P29yf1xtXW8SQqAKDKjEoegEfrdmAQk09oDL\n Tz9BNxAHgGJAjMEAAEKAB0WIQSR5RMt5bVGHXuiZfwFnS7L/zaEwwUCadT9vQAKCRAFnS7L/zaE\n ww8nEACiAueYh2MkLe7r4zV0vzNLrZA0kvDROmj9y/g1409Ntm/tQoRzDfz6jCyCDppRoc4bY28\n QtO5UsieU6b6tg1+ZZjgB1104hoiFKdWQZW4AuwzYZH16FEIynGKHuwTzzfSavUylsxtOZHNmhE\n oM+525LZsfZOs8Sjznj8CNc822ppFEXHfhKUl2NtfZ7Nqw03MXZ1RbOtWZdV0TnPuqwQyLNzwyw\n DjJ3m4y/2k5f5T01L1pcZJVDmjKeK2Xfd0ZN+5pLuJPC5pH+JEYGNojZl3Eqofh70HUfac3Zmke\n 8dAxrI8drhTaBORRvtvn/U+dsyDO91lgRKjxlnt24iudzNW/I6xUfWBvX0rG30XM/Z1nGDragrp\n Y2SxSO+uWFs7zTCHWN7sPWTFEayWpfPD4wdK9DINwyHHhc+s0Qsl0KWD4Ao3kFs72vN725wNMld\n bXQhm0esdABViOHdD0gN3cEz0jUYtr6MPTgoBUFHWyyyj8YxXckhOWNH8umChXAG05fjzF4JZpZ\n VhmH/MLnZPQEI4BsnDi2EJyyUziLdnMgtO9Gxue1v8zG2J+1wjGWusENvp7AaIDyhShgonueJKP\n QhvNIG4O35ZZ3bQ01UYSwFxJmUX/EDIb72T4QO0t3ui8a3HHQbvfs34Z6FWdIU6UDeB+v+gGKvx\n +Y6wWPKz0SadeuQ==","X-Developer-Key":"i=bartosz.golaszewski@oss.qualcomm.com; a=openpgp;\n fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772","X-Proofpoint-ORIG-GUID":"gKVKBDGawzeDp697bww_3biDtWnmttDs","X-Proofpoint-Spam-Details-Enc":"AW1haW4tMjYwNDA3MDEyMCBTYWx0ZWRfX2gRn5e5e00xa\n nst4KT9x9Ag6N/QEse+7BNHKBMs98EvtZUTQ1XOqyuL/W3UdJUe/XiRwhNsyunga0zYcpRxseCK\n afhshgKpVTrQ0SSDtznz2pE9DCTZ2KtXHw/fCJCh/fQeBodDOs5dL1FD9jU2NApc3iygqbbe/tB\n 4vwCVX3iuV5mJ9xviGBX60+MQ3ZGD1k/C7RL+gejzT8H1vHmgtTyiH7rUMoUSP6XLLCkezahtgg\n VcmwDP/5zh9Dgs7j9XT8QuZ9NlrmE1+YDueAKrw5KHfakKSxi9QwbXGmKSjnLaEdANZtiTfGAsV\n bzAR2p8/62kuaXEQB0Sb3x8fjuxLSBuoRRhyCz4QoVGUNfmwLiHKHuV9TxKRpInTLP0dREcjBrm\n B0KHznwEoISqJAUqO4JARqI2epkHCYWhmlNNphWjuQKz+VhdR1Gtaysg5y1jVJKihAlKH0bPZiX\n gWUHTXdk1Mq0wgP6aMw==","X-Proofpoint-GUID":"gKVKBDGawzeDp697bww_3biDtWnmttDs","X-Authority-Analysis":"v=2.4 cv=A/hc+aWG c=1 sm=1 tr=0 ts=69d4fdd1 cx=c_pps\n a=JbAStetqSzwMeJznSMzCyw==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10\n a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22\n a=u7WPNUs3qKkmUXheDGA7:22 a=rJkE3RaqiGZ5pbrm-msn:22 a=EUspDBNiAAAA:8\n a=uyFL3qho-AoO4IrnY-wA:9 a=QEXdDO2ut3YA:10 a=uxP6HrT_eTzRwkO_Te1X:22","X-Proofpoint-Virus-Version":"vendor=baseguard\n engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49\n definitions=2026-04-07_02,2026-04-07_02,2025-10-01_01","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n suspectscore=0 spamscore=0 lowpriorityscore=0 malwarescore=0 clxscore=1015\n phishscore=0 priorityscore=1501 impostorscore=0 bulkscore=0 adultscore=0\n classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0\n reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604070120"},"content":"gpiod_chip_watch_line_info() returns a gpiod_line_info object that must\nbe freed by the caller. Add the missing call to gpiod_line_info_free().\n\nFixes: 5f194b001ae6 (\"tools: add gpionotify\")\nSigned-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>\n---\n tools/gpionotify.c | 12 ++++++++----\n 1 file changed, 8 insertions(+), 4 deletions(-)","diff":"diff --git a/tools/gpionotify.c b/tools/gpionotify.c\nindex a6f82fbee0ed94b73635b724fa53216f4155101d..cb3a3de875a7b7b3abcfcd4ab7bc909183854b73 100644\n--- a/tools/gpionotify.c\n+++ b/tools/gpionotify.c\n@@ -374,6 +374,7 @@ int main(int argc, char **argv)\n \tint i, j, ret, events_done = 0, evtype;\n \tstruct line_resolver *resolver;\n \tstruct gpiod_info_event *event;\n+\tstruct gpiod_line_info *info;\n \tstruct timespec idle_timeout;\n \tstruct gpiod_chip **chips;\n \tstruct gpiod_chip *chip;\n@@ -405,13 +406,16 @@ int main(int argc, char **argv)\n \t\t\tdie_perror(\"unable to open chip '%s'\",\n \t\t\t\t   resolver->chips[i].path);\n \n-\t\tfor (j = 0; j < resolver->num_lines; j++)\n-\t\t\tif ((resolver->lines[j].chip_num == i) &&\n-\t\t\t    !gpiod_chip_watch_line_info(\n-\t\t\t\t    chip, resolver->lines[j].offset))\n+\t\tfor (j = 0; j < resolver->num_lines; j++) {\n+\t\t\tinfo = gpiod_chip_watch_line_info(chip,\n+\t\t\t\t\t\tresolver->lines[j].offset);\n+\t\t\tif ((resolver->lines[j].chip_num == i) && !info)\n \t\t\t\tdie_perror(\"unable to watch line on chip '%s'\",\n \t\t\t\t\t   resolver->chips[i].path);\n \n+\t\t\tgpiod_line_info_free(info);\n+\t\t}\n+\n \t\tchips[i] = chip;\n \t\tpollfds[i].fd = gpiod_chip_get_fd(chip);\n \t\tpollfds[i].events = POLLIN;\n","prefixes":["libgpiod","12/14"]}