{"id":2223542,"url":"http://patchwork.ozlabs.org/api/1.1/patches/2223542/?format=json","web_url":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/20260415143701.3309681-1-lgs201920130244@gmail.com/","project":{"id":2,"url":"http://patchwork.ozlabs.org/api/1.1/projects/2/?format=json","name":"Linux PPC development","link_name":"linuxppc-dev","list_id":"linuxppc-dev.lists.ozlabs.org","list_email":"linuxppc-dev@lists.ozlabs.org","web_url":"https://github.com/linuxppc/wiki/wiki","scm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git","webscm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/"},"msgid":"<20260415143701.3309681-1-lgs201920130244@gmail.com>","date":"2026-04-15T14:37:01","name":"macintosh: adb: fix reference leak on failed platform device registration","commit_ref":null,"pull_url":null,"state":"rejected","archived":false,"hash":"ef5c23d00f8bee3935d5b07cd459f17b5faba40a","submitter":{"id":91722,"url":"http://patchwork.ozlabs.org/api/1.1/people/91722/?format=json","name":"Guangshuo Li","email":"lgs201920130244@gmail.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/20260415143701.3309681-1-lgs201920130244@gmail.com/mbox/","series":[{"id":499997,"url":"http://patchwork.ozlabs.org/api/1.1/series/499997/?format=json","web_url":"http://patchwork.ozlabs.org/project/linuxppc-dev/list/?series=499997","date":"2026-04-15T14:37:01","name":"macintosh: adb: fix reference leak on failed platform device registration","version":1,"mbox":"http://patchwork.ozlabs.org/series/499997/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2223542/comments/","check":"success","checks":"http://patchwork.ozlabs.org/api/patches/2223542/checks/","tags":{},"headers":{"Return-Path":"\n <linuxppc-dev+bounces-19776-incoming=patchwork.ozlabs.org@lists.ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linuxppc-dev@lists.ozlabs.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=sRk1jAZM;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=2404:9400:21b9:f100::1; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev+bounces-19776-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=none smtp.remote-ip=\"2607:f8b0:4864:20::62b\"","lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com","lists.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=sRk1jAZM;\n\tdkim-atps=neutral","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gmail.com\n (client-ip=2607:f8b0:4864:20::62b; helo=mail-pl1-x62b.google.com;\n envelope-from=lgs201920130244@gmail.com; receiver=lists.ozlabs.org)"],"Received":["from lists.ozlabs.org (lists.ozlabs.org\n [IPv6:2404:9400:21b9:f100::1])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1 raw public key)\n server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fwkJ64V0hz1yCv\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 16 Apr 2026 00:37:25 +1000 (AEST)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4fwkJ005BPz2yvr;\n\tThu, 16 Apr 2026 00:37:20 +1000 (AEST)","from mail-pl1-x62b.google.com (mail-pl1-x62b.google.com\n [IPv6:2607:f8b0:4864:20::62b])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4fwkHy0BmNz2yvY\n\tfor <linuxppc-dev@lists.ozlabs.org>; Thu, 16 Apr 2026 00:37:17 +1000 (AEST)","by mail-pl1-x62b.google.com with SMTP id\n d9443c01a7336-2ad4d639db3so35900385ad.0\n        for <linuxppc-dev@lists.ozlabs.org>;\n Wed, 15 Apr 2026 07:37:17 -0700 (PDT)","from lgs.. ([112.224.67.108])\n        by smtp.gmail.com with ESMTPSA id\n d9443c01a7336-2b478142565sm22902665ad.37.2026.04.15.07.37.10\n        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n        Wed, 15 Apr 2026 07:37:13 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1776263839;\n\tcv=none;\n b=EyRaLFAFWA0hT7RFII4yaOzTbs2S8+bCk5FNVLK5kfsbk+5JZAG33VmKPPTrT/4KmCTFwlixvX+lkTMGSaj1T+E3e36D4c+Ok52Sh6n1KV+GE5aqVmpVkF19xyF7+zhvEBTWbCCL50RRCVUjVk88D9xo3uAm++0nhZgn/UTI33U8qLsgj/9NT2fLDsj76fV1x2dEYSXc5SgdN9EueARZ9hBOIhnSPFYXOQheQzXWQtZ+XXMTeFoORqP22RlqJCc0m2HXamG2qITcHCQ7pJndOs20VYT4eR6wGplvTX7gbcsU1djCx+2Xx3Ksi91XzleSYZqtHVHSxGytaK8+4s+Xvg==","ARC-Message-Signature":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1776263839; c=relaxed/relaxed;\n\tbh=98VPopI4qbGCT1pqdO2A1z/c8E+zsHJEMVeJSMI3VR8=;\n\th=From:To:Cc:Subject:Date:Message-ID:MIME-Version;\n b=haXkgFzy8dUT6+I371RlcpDBUNA5QKohaRKcLuweq7qhK46du0nJJVPX5xuyxYVeHSLXkOuN9nnAXGL0pLkxw3wdhAqLJiC32kXb5cMTYSGkm7X982zaGoZGPlTZ4c7hWC91CmqxGnJg/3z/bvdtC8+Qar8Er+RLKG25RJBw98gDgiWKaxN+XIPBe72mWu/Q7oi6GXZYMafQgMvWmfjbM9Fu0v6pmwvlg+TOJfjsMcqIrmI+b+T9NlGNpIAVCGhZC+stN528TgOXYt+ssagqoZghF+bIkANS/+6pB6vV3UFBLPaWMKc+I29WoJ1WAlBsZCL3LKP90tM/5ahitQRr0g==","ARC-Authentication-Results":"i=1; lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com; dkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=sRk1jAZM; dkim-atps=neutral;\n spf=pass (client-ip=2607:f8b0:4864:20::62b; helo=mail-pl1-x62b.google.com;\n envelope-from=lgs201920130244@gmail.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=gmail.com","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=gmail.com; s=20251104; t=1776263834; x=1776868634;\n darn=lists.ozlabs.org;\n        h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n         :to:from:from:to:cc:subject:date:message-id:reply-to;\n        bh=98VPopI4qbGCT1pqdO2A1z/c8E+zsHJEMVeJSMI3VR8=;\n        b=sRk1jAZMXS/fWC4tO0SOXnhYQuHtkj8iYnWLFKgVEzmP3bD0x7n7M+8aDxDkjwNDNf\n         VbiLiC8NTo9fGgtGKwWMeB1kifKzKlOquFKUOdI0qDJJydEx7o5jRir/3YibAlnT5jfs\n         +g9uUB7Pjzfbgey6uR/j/kpuU5DkAh26eu/glTts7Kn2NFXl5/O0ISQIS6x80m06nknl\n         f5jOshFBkY7g9fiqDVvcSoT8otFsYeW8f2CV9vKciHB+c2qGKLjDvDDGRSW+OmT9xyuv\n         gtedrFtt2fkPKW2m/JaWMfmNw+zpgwdTAbcS8no7D8dVOdC1k3xD5bideuJwkau+E46f\n         ueAQ==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1776263834; x=1776868634;\n        h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n         :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n         :message-id:reply-to;\n        bh=98VPopI4qbGCT1pqdO2A1z/c8E+zsHJEMVeJSMI3VR8=;\n        b=kNXYAD+zmHUt4FSryfNIr/5UGIB8tVoYKV/w5gcIUGZVqTVNfvoz6JJPRa6dk28PqN\n         ZXA45vNpcMbSVM+lbhZnWX4xhHwvBUEk7n0k+f+BcXTGMDVUdczdJRI0VnsK7tUdFzl2\n         Bile1K1eGG0oC45JzmoV3VUmMCPxbWAxSmGSpmtqCdtifu0JYk1AuX1G0T9dtki2VWRS\n         ptaEDxP2DDOFmaa9KPBTf0zncteecDVB73F0d+KQ2IDvAPkoDjmmNISD5vSRyw4NfMLl\n         zU3P/xb02YjxT9vpd4xOTUzW/o1yDWJJi+ZOPO1yic42B0gzxx8laaTXIOOHpfEj28B+\n         udRg==","X-Forwarded-Encrypted":"i=1;\n AFNElJ93Z5UYcZ5bYwjSuQjhIliFYUTq3OMaTh8A2nflwOLCktY5NNlWtflR3IeEoYX+9y8txAYOGJPTb658XvY=@lists.ozlabs.org","X-Gm-Message-State":"AOJu0YympXq+RiVfJFvFoDme92qrZzAZp1GqagNCFDQtaFqQ4ktIazOp\n\tmUB3TjW3xJUaOncz8frmjpsDAxH7TRQQ+yg5+UYT/zA0K4Q2fLQPkBQ8","X-Gm-Gg":"AeBDieswlPFE2DabjP10Uxzf7p8N8Fr5I9fkodCOWbnXyl2kE9+1Efk1RtZElJR7Wjc\n\tMiecxdb9PNGrv2LTOuqb/GbZArMEwh8P6dUFZTmKLfwS//1SncZ9WLHLuVBHOW0En7le3/ISc8e\n\tC4lW2eXVSX8vQge03l/lbB1VwYkdWLAQ2mi1k8a9fyX+LiUHD6vMHeaYLh0nMOPq6/YYbPhkq0h\n\tJwMTAz5uBtsAOWKucVTvy0drN3Lf9zOttnl5Tyu/zGISvGq7uFUe/VfbJFaUcian//kkKCLPOpQ\n\tmsFZ3dOvJPpcjd63WxBZ+HioCPo6tj8aMNyEzfwzdXqMB/arrd5mFu0coXbC7maMn00q3MmKVuB\n\tF3oIjbijA9KHgvzhmtsn5829cGh08FVqnWVJ8p21USaWrkfodEJ/SCaojIn8/jACCJD7QBCMg11\n\tjndQu7c6HIeUvw8Tymfpt3v3/X/B4DBguq","X-Received":"by 2002:a17:902:9308:b0:2b2:5503:1b8c with SMTP id\n d9443c01a7336-2b2d59b9facmr176124965ad.11.1776263833795;\n        Wed, 15 Apr 2026 07:37:13 -0700 (PDT)","From":"Guangshuo Li <lgs201920130244@gmail.com>","To":"Guangshuo Li <lgs201920130244@gmail.com>,\n\tKees Cook <kees@kernel.org>,\n\tJohannes Berg <johannes@sipsolutions.net>,\n\tPaul Mackerras <paulus@ozlabs.org>,\n\tlinuxppc-dev@lists.ozlabs.org,\n\tlinux-kernel@vger.kernel.org","Cc":"stable@vger.kernel.org","Subject":"[PATCH] macintosh: adb: fix reference leak on failed platform device\n registration","Date":"Wed, 15 Apr 2026 22:37:01 +0800","Message-ID":"<20260415143701.3309681-1-lgs201920130244@gmail.com>","X-Mailer":"git-send-email 2.43.0","X-Mailing-List":"linuxppc-dev@lists.ozlabs.org","List-Id":"<linuxppc-dev.lists.ozlabs.org>","List-Help":"<mailto:linuxppc-dev+help@lists.ozlabs.org>","List-Owner":"<mailto:linuxppc-dev+owner@lists.ozlabs.org>","List-Post":"<mailto:linuxppc-dev@lists.ozlabs.org>","List-Archive":"<https://lore.kernel.org/linuxppc-dev/>,\n  <https://lists.ozlabs.org/pipermail/linuxppc-dev/>","List-Subscribe":"<mailto:linuxppc-dev+subscribe@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-digest@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-nomail@lists.ozlabs.org>","List-Unsubscribe":"<mailto:linuxppc-dev+unsubscribe@lists.ozlabs.org>","Precedence":"list","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-Spam-Status":"No, score=0.4 required=3.0 tests=DKIM_SIGNED,DKIM_VALID,\n\tDKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,\n\tFROM_LOCAL_DIGITS,FROM_LOCAL_HEX,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,\n\tSPF_PASS autolearn=disabled version=4.0.1 OzLabs 8","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"},"content":"When platform_device_register() fails in adbdev_init(), the embedded\nstruct device in adb_pfdev has already been initialized by\ndevice_initialize(), but the failure path does not drop the device\nreference for the current platform device:\n\n  adbdev_init()\n    platform_device_register(&adb_pfdev)\n      device_initialize(&adb_pfdev.dev)\n      setup_pdev_dma_masks(&adb_pfdev)\n      return platform_device_add(&adb_pfdev)\n\nAs documented in platform_device_register(), the caller must use\nplatform_device_put() to give up the reference initialized in this\nfunction when registration fails.\n\nThis leads to a reference leak when platform_device_register() fails.\nFix this by checking the return value and calling platform_device_put().\n\nThe issue was identified by a static analysis tool I developed and\nconfirmed by manual review.\n\nFixes: c9f6d3d5c6d4f (\"[POWERPC] adb: Replace sleep notifier with platform driver suspend/resume hooks\")\nCc: stable@vger.kernel.org\nSigned-off-by: Guangshuo Li <lgs201920130244@gmail.com>\n---\n drivers/macintosh/adb.c | 7 ++++++-\n 1 file changed, 6 insertions(+), 1 deletion(-)","diff":"diff --git a/drivers/macintosh/adb.c b/drivers/macintosh/adb.c\nindex fe150125e099..eff06f78aa80 100644\n--- a/drivers/macintosh/adb.c\n+++ b/drivers/macintosh/adb.c\n@@ -883,6 +883,8 @@ adb_dummy_probe(struct platform_device *dev)\n static void __init\n adbdev_init(void)\n {\n+\tint err;\n+\n \tif (register_chrdev(ADB_MAJOR, \"adb\", &adb_fops)) {\n \t\tpr_err(\"adb: unable to get major %d\\n\", ADB_MAJOR);\n \t\treturn;\n@@ -893,6 +895,9 @@ adbdev_init(void)\n \n \tdevice_create(&adb_dev_class, NULL, MKDEV(ADB_MAJOR, 0), NULL, \"adb\");\n \n-\tplatform_device_register(&adb_pfdev);\n+\terr = platform_device_register(&adb_pfdev);\n+\tif (err)\n+\t\tplatform_device_put(&adb_pfdev);\n+\n \tplatform_driver_probe(&adb_pfdrv, adb_dummy_probe);\n }\n","prefixes":[]}