From nobody Tue Dec 16 16:35:31 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2777CC4167B for ; Fri, 8 Dec 2023 16:09:42 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1573863AbjLHQJc (ORCPT ); Fri, 8 Dec 2023 11:09:32 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60380 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233666AbjLHQJQ (ORCPT ); Fri, 8 Dec 2023 11:09:16 -0500 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 20B171994 for ; Fri, 8 Dec 2023 08:09:22 -0800 (PST) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rBdPe-00007w-ET; Fri, 08 Dec 2023 17:09:14 +0100 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rBdPc-00ES0F-5z; Fri, 08 Dec 2023 17:09:12 +0100 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1rBdPb-00GUaC-Su; Fri, 08 Dec 2023 17:09:11 +0100 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Dominik Brodowski , Greg Kroah-Hartman Cc: Pavel Machek , Kalle Valo , "Steven Rostedt (Google)" , Paolo Abeni , linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 1/7] pcmcia: bcm63xx: Convert to platform remove callback returning void Date: Fri, 8 Dec 2023 17:08:06 +0100 Message-ID: <33611a4245b4dabc609a75cf0e0db5e06e9a6fc8.1702051073.git.u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.42.0 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1822; i=u.kleine-koenig@pengutronix.de; h=from:subject:message-id; bh=rK09bKbPy9IbxRyCb0eChVFpuUmGGmru+y/jU63xJqA=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlcz9qf3TyhbKQ0U4p75u1hl/4Mrffgxd57x3kV GXFT44SdOaJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZXM/agAKCRCPgPtYfRL+ TijcB/wOCUrzq/j4P2FtkyFicRvWJMrTqnRvDntTRY+jRqWW8O9B9u/G9kdrd4QkYgIXnEGIk03 lhfIIUesDJOtV4xZUtbpdMcmm7mddVSP3iRV5YjnCNiQp7Y4rq3bkmH5frSgnVq5tEn9syzl12W p83Rx2OUCTw4RSxDrdqxSvkbDSR4anVM7uQN4xs0P8pwUtSbJnjOKtnUy88iF4Kq9LlDFy0UtfW wtj/psLY47/K9fM3MEHJfisa+aULQ0ILBTACcVFuGG8tdQUn/+xWP9HFmEy2MR3ycAd2AziQFlu Pt9Xa4e/kgBi2QTe4s6yfHO9anTFAySqvgQupJp6X4sR3muf X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pcmcia/bcm63xx_pcmcia.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/pcmcia/bcm63xx_pcmcia.c b/drivers/pcmcia/bcm63xx_pcmci= a.c index dd3c26099048..a5414441834a 100644 --- a/drivers/pcmcia/bcm63xx_pcmcia.c +++ b/drivers/pcmcia/bcm63xx_pcmcia.c @@ -437,7 +437,7 @@ static int bcm63xx_drv_pcmcia_probe(struct platform_dev= ice *pdev) return ret; } =20 -static int bcm63xx_drv_pcmcia_remove(struct platform_device *pdev) +static void bcm63xx_drv_pcmcia_remove(struct platform_device *pdev) { struct bcm63xx_pcmcia_socket *skt; struct resource *res; @@ -449,12 +449,11 @@ static int bcm63xx_drv_pcmcia_remove(struct platform_= device *pdev) res =3D skt->reg_res; release_mem_region(res->start, resource_size(res)); kfree(skt); - return 0; } =20 struct platform_driver bcm63xx_pcmcia_driver =3D { .probe =3D bcm63xx_drv_pcmcia_probe, - .remove =3D bcm63xx_drv_pcmcia_remove, + .remove_new =3D bcm63xx_drv_pcmcia_remove, .driver =3D { .name =3D "bcm63xx_pcmcia", .owner =3D THIS_MODULE, --=20 2.42.0 From nobody Tue Dec 16 16:35:31 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2179EC4167B for ; Fri, 8 Dec 2023 16:09:19 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233639AbjLHQJK (ORCPT ); Fri, 8 Dec 2023 11:09:10 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33176 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233525AbjLHQJI (ORCPT ); Fri, 8 Dec 2023 11:09:08 -0500 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DEF88173F for ; Fri, 8 Dec 2023 08:09:14 -0800 (PST) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rBdPc-00007x-Rv; Fri, 08 Dec 2023 17:09:12 +0100 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rBdPc-00ES0I-Cn; Fri, 08 Dec 2023 17:09:12 +0100 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1rBdPc-00GUaG-3a; Fri, 08 Dec 2023 17:09:12 +0100 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Dominik Brodowski , Greg Kroah-Hartman Cc: linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 2/7] pcmcia: db1xxx_ss: Convert to platform remove callback returning void Date: Fri, 8 Dec 2023 17:08:07 +0100 Message-ID: <3d4c108421f2b1175d3a75ee6854e7772f8a0f82.1702051073.git.u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.42.0 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1949; i=u.kleine-koenig@pengutronix.de; h=from:subject:message-id; bh=hoOY5rB1wBTrm118MtH1tMoeiGlvJRV6JaXbOehuwJI=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlcz9s7low3YagEVqKvVCP8KpeDw29gpuTL57GW 8gR3BuoyWSJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZXM/bAAKCRCPgPtYfRL+ TquFB/9ngk35j3HsFMuqUz7AHsV1DL1owZ3//hwU4IDZar2fh9KXu8S6NdL69qrH3ONbRq6r2I9 D5fi/U+YlDS1j03udvaDYEBdXi36THcMqLUaSPJb16vyTF+cWGzugfXK9ybwHv49KGM1Wfg5yq7 FfzoKCDwZ7V54bl0racUEOYQhcXA5ltYrIOpVSdpDI/4mpAQQB7OwW73SDBrdCvl6ggyz7PgYsL DRnCw7RCSWzVRAnILInxCiBXFLgssOittjh7ScwUpv9SNc4J5y1vvFVQleJ7fyUbdzWxErYRwD6 0aH3XGiDkjf8cCPTBfSis2uyJ6d4yxKcBEUvZxlcrbXJE2bS X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pcmcia/db1xxx_ss.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pcmcia/db1xxx_ss.c b/drivers/pcmcia/db1xxx_ss.c index 87a33ecc2cf1..509713b9a502 100644 --- a/drivers/pcmcia/db1xxx_ss.c +++ b/drivers/pcmcia/db1xxx_ss.c @@ -577,7 +577,7 @@ static int db1x_pcmcia_socket_probe(struct platform_dev= ice *pdev) return ret; } =20 -static int db1x_pcmcia_socket_remove(struct platform_device *pdev) +static void db1x_pcmcia_socket_remove(struct platform_device *pdev) { struct db1x_pcmcia_sock *sock =3D platform_get_drvdata(pdev); =20 @@ -585,8 +585,6 @@ static int db1x_pcmcia_socket_remove(struct platform_de= vice *pdev) pcmcia_unregister_socket(&sock->socket); iounmap((void *)(sock->virt_io + (u32)mips_io_port_base)); kfree(sock); - - return 0; } =20 static struct platform_driver db1x_pcmcia_socket_driver =3D { @@ -594,7 +592,7 @@ static struct platform_driver db1x_pcmcia_socket_driver= =3D { .name =3D "db1xxx_pcmcia", }, .probe =3D db1x_pcmcia_socket_probe, - .remove =3D db1x_pcmcia_socket_remove, + .remove_new =3D db1x_pcmcia_socket_remove, }; =20 module_platform_driver(db1x_pcmcia_socket_driver); --=20 2.42.0 From nobody Tue Dec 16 16:35:31 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7CEE1C4167B for ; Fri, 8 Dec 2023 16:09:44 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1573891AbjLHQJf (ORCPT ); Fri, 8 Dec 2023 11:09:35 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60400 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233802AbjLHQJQ (ORCPT ); Fri, 8 Dec 2023 11:09:16 -0500 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 543AD1996 for ; Fri, 8 Dec 2023 08:09:22 -0800 (PST) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rBdPe-00007y-EO; Fri, 08 Dec 2023 17:09:14 +0100 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rBdPc-00ES0L-Ja; Fri, 08 Dec 2023 17:09:12 +0100 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1rBdPc-00GUaK-AC; Fri, 08 Dec 2023 17:09:12 +0100 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Dominik Brodowski , Greg Kroah-Hartman Cc: Pavel Machek , Kalle Valo , Paolo Abeni , "Steven Rostedt (Google)" , linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 3/7] pcmcia: electra_cf: Convert to platform remove callback returning void Date: Fri, 8 Dec 2023 17:08:08 +0100 Message-ID: <7b07c8624ab53ec90554b7a665bef7662bd94295.1702051073.git.u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.42.0 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1830; i=u.kleine-koenig@pengutronix.de; h=from:subject:message-id; bh=n+hlrlFsRjhTMFN/VhJfgAOKKI1JiL5o8AuQJaDTRE8=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlcz9t4grYDDRNZRyGpl8l+mzx2yGASB8M17muz Vz022OdPTSJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZXM/bQAKCRCPgPtYfRL+ TpWNB/485Cj9cA18CE30IsaMcPnXRbCFsk534FXaxYYJXEMycoz4bZpvGAJ8jLOXWgDgnK70lsO +pkBkxwNVpvix2AxSiF1GJKuRYbtq3ddnTRfcBepESP3rormcBQnV2b1uxXh1cTgzlNprF13JfT tnqRFcuKsW7T5Y5yCk0hfyZ2G5f2Hw/myzn+GW33HwdfyvZhAlShhuiPiGb/VAxTMkL2qkobj67 mCJjMz9qfoQ1ai/FBtGTw0jkvOHNZnauPOGw83L0B0sjSgVSI3dvvrkOSizpLpMQ5C2rHABZwLh mKheugxZLvGkY1Z/cp+whv808yrozTDnjguLm2OgWGiqzRLr X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pcmcia/electra_cf.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pcmcia/electra_cf.c b/drivers/pcmcia/electra_cf.c index efc27bc15152..5ae826e54811 100644 --- a/drivers/pcmcia/electra_cf.c +++ b/drivers/pcmcia/electra_cf.c @@ -307,7 +307,7 @@ static int electra_cf_probe(struct platform_device *ofd= ev) =20 } =20 -static int electra_cf_remove(struct platform_device *ofdev) +static void electra_cf_remove(struct platform_device *ofdev) { struct device *device =3D &ofdev->dev; struct electra_cf_socket *cf; @@ -326,8 +326,6 @@ static int electra_cf_remove(struct platform_device *of= dev) release_region(cf->io_base, cf->io_size); =20 kfree(cf); - - return 0; } =20 static const struct of_device_id electra_cf_match[] =3D { @@ -344,7 +342,7 @@ static struct platform_driver electra_cf_driver =3D { .of_match_table =3D electra_cf_match, }, .probe =3D electra_cf_probe, - .remove =3D electra_cf_remove, + .remove_new =3D electra_cf_remove, }; =20 module_platform_driver(electra_cf_driver); --=20 2.42.0 From nobody Tue Dec 16 16:35:31 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id A06D7C4167B for ; Fri, 8 Dec 2023 16:09:32 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235908AbjLHQJX (ORCPT ); Fri, 8 Dec 2023 11:09:23 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60332 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233610AbjLHQJN (ORCPT ); Fri, 8 Dec 2023 11:09:13 -0500 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D61B9171C for ; Fri, 8 Dec 2023 08:09:19 -0800 (PST) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rBdPe-000088-EY; Fri, 08 Dec 2023 17:09:14 +0100 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rBdPc-00ES0O-Qo; Fri, 08 Dec 2023 17:09:12 +0100 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1rBdPc-00GUaO-H9; Fri, 08 Dec 2023 17:09:12 +0100 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Dominik Brodowski , Greg Kroah-Hartman Cc: Pavel Machek , "Steven Rostedt (Google)" , Paolo Abeni , Kalle Valo , linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 4/7] pcmcia: omap_cf: Convert to platform remove callback returning void Date: Fri, 8 Dec 2023 17:08:09 +0100 Message-ID: <9d96646b75b10f7562d4d18010e885b7fc55e0ab.1702051073.git.u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.42.0 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1745; i=u.kleine-koenig@pengutronix.de; h=from:subject:message-id; bh=RbjHfi5RXtO4cc8x56c5B+Z/tmcBf4To9DyVqGrX0Mw=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlcz9uzcEXgFvxHOFei0v+/iJGpZmJ3AUq5eLjE /WeNYj57paJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZXM/bgAKCRCPgPtYfRL+ TuNiCACNqZGlNha/Xc541obujpShtx6aayui0pbg6Wz+3ZIzoDiAvtzMRVCvJOaLzjEh13m/bGs tClR79pkmqPpYeAmLQ82WGZbEbvjohsA+5bofFYGzUVFAAv5Iu2YGsz8k0KU9Rgs2EPPSJbBuuG rfFcXDs/n1dlm3DpHuCKOO+XlfxABBtBXD3VgxUXBpEg9LWy55JXRewJQtAP2TTG48q+H6uo7nP bu2Sxwmf1MLzIqLOJYkzv6+HFPR5EMBsaLwLZ9dX2LCKdFwDZT6X0dQJUgNR1hdPrH/i2dNQruQ QWYqvuLCEimGnBiIgTqLzjj+njANSuoYpjF1WfJXxEjxile2 X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pcmcia/omap_cf.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/pcmcia/omap_cf.c b/drivers/pcmcia/omap_cf.c index e613818dc0bc..80137c7afe0d 100644 --- a/drivers/pcmcia/omap_cf.c +++ b/drivers/pcmcia/omap_cf.c @@ -290,7 +290,7 @@ static int __init omap_cf_probe(struct platform_device = *pdev) return status; } =20 -static int __exit omap_cf_remove(struct platform_device *pdev) +static void __exit omap_cf_remove(struct platform_device *pdev) { struct omap_cf_socket *cf =3D platform_get_drvdata(pdev); =20 @@ -300,14 +300,13 @@ static int __exit omap_cf_remove(struct platform_devi= ce *pdev) release_mem_region(cf->phys_cf, SZ_8K); free_irq(cf->irq, cf); kfree(cf); - return 0; } =20 static struct platform_driver omap_cf_driver =3D { .driver =3D { .name =3D driver_name, }, - .remove =3D __exit_p(omap_cf_remove), + .remove_new =3D __exit_p(omap_cf_remove), }; =20 static int __init omap_cf_init(void) --=20 2.42.0 From nobody Tue Dec 16 16:35:31 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 05743C4167B for ; Fri, 8 Dec 2023 16:09:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235890AbjLHQJU (ORCPT ); Fri, 8 Dec 2023 11:09:20 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60318 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233534AbjLHQJN (ORCPT ); Fri, 8 Dec 2023 11:09:13 -0500 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 86FC01989 for ; Fri, 8 Dec 2023 08:09:19 -0800 (PST) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rBdPd-000089-Hm; Fri, 08 Dec 2023 17:09:13 +0100 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rBdPd-00ES0S-0V; Fri, 08 Dec 2023 17:09:13 +0100 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1rBdPc-00GUaS-NR; Fri, 08 Dec 2023 17:09:12 +0100 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Dominik Brodowski , Greg Kroah-Hartman Cc: Daniel Mack , Haojian Zhuang , Robert Jarzmik , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 5/7] pcmcia: pxa2xx: Convert to platform remove callback returning void Date: Fri, 8 Dec 2023 17:08:10 +0100 Message-ID: X-Mailer: git-send-email 2.42.0 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1870; i=u.kleine-koenig@pengutronix.de; h=from:subject:message-id; bh=hvn8AQUIqYIyVFAM+ew2t9GzPmRIrB2d2DyEy1ujsww=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlcz90RZC/CPits6AxPT2VDwenom4vwo7b3Ux8k UrtlvzSI3mJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZXM/dAAKCRCPgPtYfRL+ TkgxB/450LmDHFEQA6eZw+c0u/hHlMa4ZxsV6qeu5sZ0RIGGDgGGcneuz5ggq9a/A6ZpkmhZpcF wKnySPUZ9buT+h0XS0JLrrCAFjxJ/4aKbzB0E4Fr3SmWAZnojZ7chE5T/L3T/BbjmhubSW+HJ6t mb2cIVMPWCId+J0dBsKVo/uoEMztSyQ50zM/Hwl7YtsvUWvyItEAD+5ZNhxMEYfa5HfhOsEgsPA qsbOMmufsdyvb+2t60AZWVeaiMPyHQ8ZL/ndgTJ8WUN75zE+8DRo4JoS8S209V4GTKC3aVBIYP0 AiMynIskF3X1hPg7u6pgQ9o39vBrvV1xc5onmzK7dMHFRt6n X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pcmcia/pxa2xx_base.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pcmcia/pxa2xx_base.c b/drivers/pcmcia/pxa2xx_base.c index 5254028354f4..457fb81b497a 100644 --- a/drivers/pcmcia/pxa2xx_base.c +++ b/drivers/pcmcia/pxa2xx_base.c @@ -313,15 +313,13 @@ static int pxa2xx_drv_pcmcia_probe(struct platform_de= vice *dev) return ret; } =20 -static int pxa2xx_drv_pcmcia_remove(struct platform_device *dev) +static void pxa2xx_drv_pcmcia_remove(struct platform_device *dev) { struct skt_dev_info *sinfo =3D platform_get_drvdata(dev); int i; =20 for (i =3D 0; i < sinfo->nskt; i++) soc_pcmcia_remove_one(&sinfo->skt[i]); - - return 0; } =20 static int pxa2xx_drv_pcmcia_resume(struct device *dev) @@ -338,7 +336,7 @@ static const struct dev_pm_ops pxa2xx_drv_pcmcia_pm_ops= =3D { =20 static struct platform_driver pxa2xx_pcmcia_driver =3D { .probe =3D pxa2xx_drv_pcmcia_probe, - .remove =3D pxa2xx_drv_pcmcia_remove, + .remove_new =3D pxa2xx_drv_pcmcia_remove, .driver =3D { .name =3D "pxa2xx-pcmcia", .pm =3D &pxa2xx_drv_pcmcia_pm_ops, --=20 2.42.0 From nobody Tue Dec 16 16:35:31 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 773C9C4167B for ; Fri, 8 Dec 2023 16:09:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233632AbjLHQJb (ORCPT ); Fri, 8 Dec 2023 11:09:31 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60344 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233712AbjLHQJO (ORCPT ); Fri, 8 Dec 2023 11:09:14 -0500 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 729D2198C for ; Fri, 8 Dec 2023 08:09:20 -0800 (PST) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rBdPe-00008A-Et; Fri, 08 Dec 2023 17:09:14 +0100 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rBdPd-00ES0V-7c; Fri, 08 Dec 2023 17:09:13 +0100 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1rBdPc-00GUaW-Ug; Fri, 08 Dec 2023 17:09:12 +0100 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Dominik Brodowski , Greg Kroah-Hartman Cc: Viresh Kumar , Lee Jones , Linus Walleij , Arnd Bergmann , linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 6/7] pcmcia: sa1100: Convert to platform remove callback returning void Date: Fri, 8 Dec 2023 17:08:11 +0100 Message-ID: <6473afe67fc5c320a8184d0871a8561f7685e265.1702051073.git.u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.42.0 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1892; i=u.kleine-koenig@pengutronix.de; h=from:subject:message-id; bh=soQnZWwWX5NPDCGNgya11PcjXTdqO51zNv14LXCtkeM=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlcz96dq8FIqBF+9nhRULOPdYII0+SJ2lmN0qx4 vOsf7RMtN2JATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZXM/egAKCRCPgPtYfRL+ TsaZCACGrDJbeg57n+TS5zDu2iOt3i8CZPfzAc6KKsn7mM7PtesUBYd47RUUdVFme+9wLJBlq2h z/ybFAM6vFgwnMuArx9SE8DJH712b+aLSnOlmlmCABTBjK3JssgIwT0+0/7DYyntyCS7NOUl0t4 FTwFReArCVrjsTf0R8RewDs5ntQKD4Dy4GtjPecVCcrb9wdONxaJ2D+ui8ioy0Qh/Ixpcl2Ptus Vdgv9EXACyiFSaCmuqcjl3mwb2JgW2FsbWRcTru3TziMRAS/rM3VjTCdVv9L2Z4JdnzhCBRJKd5 PkHLWFxTBCprnaj/y6kcBAA4cyg2MeD/niAksyFzW9Ts9YqS X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pcmcia/sa1100_generic.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/drivers/pcmcia/sa1100_generic.c b/drivers/pcmcia/sa1100_generi= c.c index 89d4ba58c891..ccb219c38761 100644 --- a/drivers/pcmcia/sa1100_generic.c +++ b/drivers/pcmcia/sa1100_generic.c @@ -158,20 +158,18 @@ static int sa11x0_drv_pcmcia_probe(struct platform_de= vice *pdev) return sa11xx_drv_pcmcia_add_one(skt); } =20 -static int sa11x0_drv_pcmcia_remove(struct platform_device *dev) +static void sa11x0_drv_pcmcia_remove(struct platform_device *dev) { struct soc_pcmcia_socket *skt; =20 if (dev->id =3D=3D -1) { sa11x0_drv_pcmcia_legacy_remove(dev); - return 0; + return; } =20 skt =3D platform_get_drvdata(dev); =20 soc_pcmcia_remove_one(skt); - - return 0; } =20 static struct platform_driver sa11x0_pcmcia_driver =3D { @@ -179,7 +177,7 @@ static struct platform_driver sa11x0_pcmcia_driver =3D { .name =3D "sa11x0-pcmcia", }, .probe =3D sa11x0_drv_pcmcia_probe, - .remove =3D sa11x0_drv_pcmcia_remove, + .remove_new =3D sa11x0_drv_pcmcia_remove, }; =20 /* sa11x0_pcmcia_init() --=20 2.42.0 From nobody Tue Dec 16 16:35:31 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 67D83C4167B for ; Fri, 8 Dec 2023 16:09:21 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233674AbjLHQJM (ORCPT ); Fri, 8 Dec 2023 11:09:12 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33192 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233534AbjLHQJJ (ORCPT ); Fri, 8 Dec 2023 11:09:09 -0500 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 96371198C for ; Fri, 8 Dec 2023 08:09:15 -0800 (PST) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rBdPd-00008J-Pz; Fri, 08 Dec 2023 17:09:13 +0100 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rBdPd-00ES0Y-DP; Fri, 08 Dec 2023 17:09:13 +0100 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1rBdPd-00GUaa-4I; Fri, 08 Dec 2023 17:09:13 +0100 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Dominik Brodowski , Greg Kroah-Hartman Cc: linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 7/7] pcmcia: xxs1500_ss: Convert to platform remove callback returning void Date: Fri, 8 Dec 2023 17:08:12 +0100 Message-ID: <09a89926787cb9f64caa73c510f04d9f04a5136f.1702051073.git.u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.42.0 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1937; i=u.kleine-koenig@pengutronix.de; h=from:subject:message-id; bh=1a3XrsIBjUzDTZoYZo4bHiJM6guDdpuYJ7uENxq/LbU=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlcz97w6if+bX06ito1EaAC/uUsJes2JGyWHnGh dgvlVq86nCJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZXM/ewAKCRCPgPtYfRL+ Ts89B/oCRgIz6tkNDFCrphlrv06SguKi+HPpSGGGY7TgCExVUV2jfIhyf6ZdBHryu2siN/p4VPj ZhfzTTulkKtT2wo2fzHOMk8aGeD9c9FUnA9sBwKZYKPoR2bwm+vaAl4b/uGNlOkSSbhZi8kZAz9 bR3nQ8lOwrHWwk8Zf8jamhyJ8cOPKMKxIcF7ramO5mSYBCiToS438PLO9FIkTCyuZcimw7RM5Wq r/XCKtnQgtN6gMceOLF4GwnYLZkoUMr+o7zn2Zo1/wOdABOkIfft10kEecl3ghUdrJ6SXC6/tAK m1nK+HFlsB3WJ6Pe0gm8elfqNIzhFIOKC90kmr+mmkxIiPeX X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is ignored (apart from emitting a warning) and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new(), which already returns void. Eventually after all drivers are converted, .remove_new() will be renamed to .remove(). Trivially convert this driver from always returning zero in the remove callback to the void returning variant. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/pcmcia/xxs1500_ss.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/pcmcia/xxs1500_ss.c b/drivers/pcmcia/xxs1500_ss.c index b11c7abb1dc0..2a93fbbd128d 100644 --- a/drivers/pcmcia/xxs1500_ss.c +++ b/drivers/pcmcia/xxs1500_ss.c @@ -301,7 +301,7 @@ static int xxs1500_pcmcia_probe(struct platform_device = *pdev) return ret; } =20 -static int xxs1500_pcmcia_remove(struct platform_device *pdev) +static void xxs1500_pcmcia_remove(struct platform_device *pdev) { struct xxs1500_pcmcia_sock *sock =3D platform_get_drvdata(pdev); =20 @@ -309,8 +309,6 @@ static int xxs1500_pcmcia_remove(struct platform_device= *pdev) free_irq(gpio_to_irq(GPIO_CDA), sock); iounmap((void *)(sock->virt_io + (u32)mips_io_port_base)); kfree(sock); - - return 0; } =20 static struct platform_driver xxs1500_pcmcia_socket_driver =3D { @@ -318,7 +316,7 @@ static struct platform_driver xxs1500_pcmcia_socket_dri= ver =3D { .name =3D "xxs1500_pcmcia", }, .probe =3D xxs1500_pcmcia_probe, - .remove =3D xxs1500_pcmcia_remove, + .remove_new =3D xxs1500_pcmcia_remove, }; =20 module_platform_driver(xxs1500_pcmcia_socket_driver); --=20 2.42.0