[{"id":3681855,"web_url":"http://patchwork.ozlabs.org/comment/3681855/","msgid":"<CANUHTR-YL+ZBWA13vYgOfs-YjKRyG_60ZjFbpPa-Dh8P8Mixmw@mail.gmail.com>","date":"2026-04-24T08:11:55","subject":"Re: [PATCH] macintosh: adb: fix reference leak on failed platform\n device registration","submitter":{"id":91722,"url":"http://patchwork.ozlabs.org/api/people/91722/","name":"Guangshuo Li","email":"lgs201920130244@gmail.com"},"content":"Hi,\n\nPlease disregard this patch.\n\nOn Wed, 15 Apr 2026 at 22:37, Guangshuo Li <lgs201920130244@gmail.com> wrote:\n>\n> When platform_device_register() fails in adbdev_init(), the embedded\n> struct device in adb_pfdev has already been initialized by\n> device_initialize(), but the failure path does not drop the device\n> reference 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>\n> As documented in platform_device_register(), the caller must use\n> platform_device_put() to give up the reference initialized in this\n> function when registration fails.\n>\n> This leads to a reference leak when platform_device_register() fails.\n> Fix this by checking the return value and calling platform_device_put().\n>\n> The issue was identified by a static analysis tool I developed and\n> confirmed by manual review.\n>\n> Fixes: c9f6d3d5c6d4f (\"[POWERPC] adb: Replace sleep notifier with platform driver suspend/resume hooks\")\n> Cc: stable@vger.kernel.org\n> Signed-off-by: Guangshuo Li <lgs201920130244@gmail.com>\n> ---\n>  drivers/macintosh/adb.c | 7 ++++++-\n>  1 file changed, 6 insertions(+), 1 deletion(-)\n>\n> diff --git a/drivers/macintosh/adb.c b/drivers/macintosh/adb.c\n> index 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> +       int err;\n> +\n>         if (register_chrdev(ADB_MAJOR, \"adb\", &adb_fops)) {\n>                 pr_err(\"adb: unable to get major %d\\n\", ADB_MAJOR);\n>                 return;\n> @@ -893,6 +895,9 @@ adbdev_init(void)\n>\n>         device_create(&adb_dev_class, NULL, MKDEV(ADB_MAJOR, 0), NULL, \"adb\");\n>\n> -       platform_device_register(&adb_pfdev);\n> +       err = platform_device_register(&adb_pfdev);\n> +       if (err)\n> +               platform_device_put(&adb_pfdev);\n> +\n>         platform_driver_probe(&adb_pfdrv, adb_dummy_probe);\n>  }\n> --\n> 2.43.0\n>\n\nAfter re-checking it, adb_pfdev is a static platform_device and it does\nnot provide a dev.release callback. Therefore calling\nplatform_device_put() on the platform_device_register() failure path is\nnot appropriate here and can trigger the missing release callback\nwarning.\n\nThis falls into the same static platform_device pattern pointed out in\nthe other reviews, so I will drop this patch.\n\nSorry for the noise.\n\nBest regards,\nGuangshuo Li","headers":{"Return-Path":"\n <linuxppc-dev+bounces-20048-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=S7xDWJfb;\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-20048-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=pass smtp.remote-ip=\"2607:f8b0:4864:20::b133\" arc.chain=google.com","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=S7xDWJfb;\n\tdkim-atps=neutral","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gmail.com\n (client-ip=2607:f8b0:4864:20::b133; helo=mail-yx1-xb133.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)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g25Kb1xg8z1xvV\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 24 Apr 2026 18:12:19 +1000 (AEST)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4g25KZ1Xllz2yFm;\n\tFri, 24 Apr 2026 18:12:18 +1000 (AEST)","from mail-yx1-xb133.google.com (mail-yx1-xb133.google.com\n [IPv6:2607:f8b0:4864:20::b133])\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 4g25KS5RYSz2xly\n\tfor <linuxppc-dev@lists.ozlabs.org>; Fri, 24 Apr 2026 18:12:11 +1000 (AEST)","by mail-yx1-xb133.google.com with SMTP id\n 956f58d0204a3-65075c2ba66so5814152d50.1\n        for <linuxppc-dev@lists.ozlabs.org>;\n Fri, 24 Apr 2026 01:12:11 -0700 (PDT)"],"ARC-Seal":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1777018338;\n\tcv=pass;\n b=ek4pQ6dRaLhilfd/NHniKcBPBH0YX7piQ1GRuWxZ/3IcCf8fDXUaSTLVzQKgqKuiirJuBq8UWyO3zy/7ljNW0z0W0d/HJCASq6mxM6Q6VHsrWv4I4ypxV6cauPXqZzUt1kuv0FM4vFJVnXsxEWu+DBR5invOQukAcJc8Pxl5Jfy7vxa5BWksr5DpS52VjxRTX15NILBZopUl9EFVi1Oi09MD3FUgrx1atmb3qEwH275frvtp+YVrk9E8bq+qPQkPf/9lojD1OdYuv6QctB98lGQ7InepO+hOcldHmSeuTngo0QrmmaFjhGAv+jKGNT2JTbauphZB3bpObfTn8kyICw==","i=1; a=rsa-sha256; t=1777018329; cv=none;\n        d=google.com; s=arc-20240605;\n        b=JdtOaJBBMCy1i2lU854nwsUKQ1g0ajw9UIeTgm02rZJhVIQ+ieQ35XfputuOvmFwrR\n         hX43i82Z3RjSfBPKfz773dby20xWcsu+5Z1q7er9tZ2XgWo8YU9Ue191TnGoMuSJeg+y\n         oaYHfwCGqXpxQBeH03kcJF6y5XOMdZbucUDd0ykn6DA3DWPZRGEeDxeTsVfUXDT1ADZ3\n         7E2lh7hSN5/S/ETQcEZVWAatR2MZbrgpxxMUfzTL1RppM/Kk/Yv/x8DnsEp+BKD74pGe\n         /xWq9sqwQBVkE1RXaplQvZ0HtHnRrv1/pgeIOc+KVoxzHiLaA8jqJ6PS/eWPuzxc0ArY\n         aPkg=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1777018338; c=relaxed/relaxed;\n\tbh=PghHXsaUvPB2FGmxVpPAYNm3E4Qd+tT/tA4p8BC2Akg=;\n\th=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject:\n\t To:Cc:Content-Type;\n b=dK7LGaUhAk3ZqwQwEqKOjDOrZZyivzXgjIZqkZyjMw1n+e5iSUklj95JTNaenFvzA1QJzrmOoN0gSot/gRXteF3Jlt2YkhnlKYNSjJ7eVDtxD3s/7hcC0sMuTSujeD7mQ8wEs4+pDHwkLzx9aMxFSqbYuD3LAV9l6nYrQFfF+Z59s7YVFeUWZ+Aqvfk2vhAmn0pfAqlAO6UiDyybcQ3hUGEDYf9HQgu1DnXsIfgTnTvR3gPpfNk9r7IRFcuGtL+qUhj1ku+iCHxDJQPGETRv8pCVFRDW3QZ7R6g8/wRwTBr+bLFhfh98KoYaCisTsb2LNTCQVEOlriTrwGCUZtYQcg==","i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n        h=cc:to:subject:message-id:date:from:in-reply-to:references\n         :mime-version:dkim-signature;\n        bh=PghHXsaUvPB2FGmxVpPAYNm3E4Qd+tT/tA4p8BC2Akg=;\n        fh=2s4zQS0jQ/gn5Nc4JPtQyVwpfjhq+tZ5FMD4poHFgmM=;\n        b=LRmyVDckRx8tRS9LIhnNObk960E8B9gR85un3pkwqVhxx3yPXh09jwknmlWfZn6grH\n         rlFhjfJXkRTwfng6f2OD0XddQ1aYHo27GAD8ZvVXIT8uB7C8uXLDpHSosVKFKK84hoSp\n         mDFMGOQg3lgGt8/+SPlydYPKESIo8LrLkyKVbi5XigQbQ1cD9XpZ/uINFlmk++331dgA\n         39cdGTzUXMyJ128BZ4qGUVVKVaj9ALCkTWTNHPvpvS4jVd4Z6nhDAeAny/w2k1Kn+I7o\n         00LBwRi9hfL13xaXZSHkk+0f5TPrGIpkSBqFRY1emQNwA5/Vbk9Ny6qcm/FxUFX57bGk\n         ySng==;\n        darn=lists.ozlabs.org"],"ARC-Authentication-Results":["i=2; 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=S7xDWJfb; dkim-atps=neutral;\n spf=pass (client-ip=2607:f8b0:4864:20::b133; helo=mail-yx1-xb133.google.com;\n envelope-from=lgs201920130244@gmail.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=gmail.com","i=1; mx.google.com; arc=none"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=gmail.com; s=20251104; t=1777018329; x=1777623129;\n darn=lists.ozlabs.org;\n        h=cc:to:subject:message-id:date:from:in-reply-to:references\n         :mime-version:from:to:cc:subject:date:message-id:reply-to;\n        bh=PghHXsaUvPB2FGmxVpPAYNm3E4Qd+tT/tA4p8BC2Akg=;\n        b=S7xDWJfboeUWRK7+TBzTKvgBSxkD782c+3pLputvy0fp8Sc2svdVLXV2C0hPYxcIpG\n         FgU/Q5ijkdiH3pmN8uOCViQvBFJU2QchqZ39hQpKoIXC5Mm+V2YRiX0T5Q8EL6pj9+yE\n         dPQ/QwBId2NTbFRwUZeD1NAwsig7TZ7Yj8BwbNlxiBwU5c1Jhcai+viIvAnMa621obu4\n         GGBzkkh/w9q7EGwTU6q6HX67cH5cAbZS0t+5cmpUkQ50+YB+CZumrR7Ye4l7BDGpUTkL\n         WYYKHKkBk44kuXytZXfSyO08iqq44QCDWV2gyRvxcR1oAg12Ksgh3WSMOcMUgF82x1sq\n         cbjA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1777018329; x=1777623129;\n        h=cc:to:subject:message-id:date:from:in-reply-to:references\n         :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n         :message-id:reply-to;\n        bh=PghHXsaUvPB2FGmxVpPAYNm3E4Qd+tT/tA4p8BC2Akg=;\n        b=ULyGbScNTFuVkXDL6Soy5SuzUowsZPrp09+wUFk9IhLP1XErdSt8amhpSP6hovsUHG\n         BiRr1vfgXQJjr9fUmk3PCaJuSX1qpPtGZ9URD5EBp9GGNCZaEq8UqDhWozg98DF0o2Yv\n         6n3w2BED5l+SinbkisES/hUHbZLXNFC8HzD2y0VNVMeCs88OG1CI31ZLGPA/Ie31MCE+\n         Vh/bP+p3oBmjdNmu8jufzJL4qaaiH/NNLg+TkFpIbr2Ubc1uH2VRsb6wpH77WPgdsOuP\n         bB0NsUK7q7xjLHOuyPL3JrSaFpe+fskj63rgmMssXTxdnVrorNNFufr3JjY3xhcbAG3I\n         FTGw==","X-Forwarded-Encrypted":"i=1;\n AFNElJ8QUKKTTZ1DlXd3Oj1RksFtfuQq9kvQcvqwYFK6d83d9TOksLq9gIzAHij3y4pcJht9LtO7yiI3FHtitEs=@lists.ozlabs.org","X-Gm-Message-State":"AOJu0YzrPxp4UievKxRNjkAyi+OYoo0CyFAKfYv3glpSxbrjy+/sW7Cy\n\tVBJ8V+cXcaR4ScwMWiNYwnQX0LTIlUPKTP3cDOnLhC3VwxSmxQaJyY3ZRRBFcpX+zeCiY4flLUS\n\tvQKg1ISci+kAKFtkoXTcFGoMV/8w6gsQ=","X-Gm-Gg":"AeBDiesJ1dIkCzZJfJiHmYts4GsaLfm5rwcj/wgn5Q7x34I7SrckZNPmVA5Qhx8hFqR\n\tL2BdtPpKKBQhWtp6qHD0B2v47eeDduIkzx6o+gHWJCVQP8aP/ab1K8HIfC86jq8MkCwGHsJeYp+\n\ttFtc8HgqYuYwT4/x/uyIPU+CIC2cKGhRvUWkwiD/N4P1lUzwQ9EfaiYDFWvC0KoYJa2+JKGQbt6\n\tvr2ziAARlClq9+IG1UAPIzq05tShuBFl+cZGODnyaH4qFaWmCOIb33aths8x7yh0Ig3W5CledVj\n\tH3Z6c0c8i236INnDnEl8","X-Received":"by 2002:a05:690e:4199:b0:64c:a0c6:da93 with SMTP id\n 956f58d0204a3-6531089af70mr25686233d50.28.1777018329042; Fri, 24 Apr 2026\n 01:12:09 -0700 (PDT)","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","References":"<20260415143701.3309681-1-lgs201920130244@gmail.com>","In-Reply-To":"<20260415143701.3309681-1-lgs201920130244@gmail.com>","From":"Guangshuo Li <lgs201920130244@gmail.com>","Date":"Fri, 24 Apr 2026 16:11:55 +0800","X-Gm-Features":"AQROBzBc5qXvUTrDC5JalkEZi1O-Zxl9G-jCas25GxZKqJns4L1d-RV9sUSyvKw","Message-ID":"\n <CANUHTR-YL+ZBWA13vYgOfs-YjKRyG_60ZjFbpPa-Dh8P8Mixmw@mail.gmail.com>","Subject":"Re: [PATCH] macintosh: adb: fix reference leak on failed platform\n device registration","To":"Guangshuo Li <lgs201920130244@gmail.com>, Kees Cook <kees@kernel.org>,\n\tJohannes Berg <johannes@sipsolutions.net>,\n Paul Mackerras <paulus@ozlabs.org>,\n\tlinuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org","Cc":"stable@vger.kernel.org","Content-Type":"text/plain; charset=\"UTF-8\"","X-Spam-Status":"No, score=0.4 required=3.0 tests=ARC_SIGNED,ARC_VALID,\n\tDKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,\n\tFREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,FROM_LOCAL_DIGITS,\n\tFROM_LOCAL_HEX,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS\n\tautolearn=disabled version=4.0.1 OzLabs 8","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"}}]