Message ID | 20231009083856.222030-10-u.kleine-koenig@pengutronix.de |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a888:0:b0:403:3b70:6f57 with SMTP id x8csp1742764vqo; Mon, 9 Oct 2023 02:22:59 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFoscngBLOE77MbD6qdyIyVvRr7ronxypm858nlQqY6PlBlEnfyWvH+xtg/xHAEwMJ/l9U+ X-Received: by 2002:a05:6a20:7f83:b0:15e:b8a1:57b9 with SMTP id d3-20020a056a207f8300b0015eb8a157b9mr16765231pzj.24.1696843378788; Mon, 09 Oct 2023 02:22:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1696843378; cv=none; d=google.com; s=arc-20160816; b=yO1/EYkhiJ6NSt4Ph+3cMs4V7H8jZyO+p4T/m4i38WGmYt1gPOy/olq8TmW8SqfVjK h+PSgYuFkGKoCzkdaXI51avVKrL79sO5J+XWWIzF8i8vuharioEu8L6AMUg9pkwzDg3/ KUbW/Cw0zR3HTaTarcz7J8KjMR+v7MWfxzGSeFAIzPpm4JiwdBTajonWUtC6YJQUUx/W 45itssiHdGA0MaD2FTl3LNw7lz3CN00AiD1NnmNqB/m1tZBEfu+/EX9HULns43z2xotR OZX8LukG/qPgeisCanzTToylFOgD9VL9BdeyTe7u1FQqDoX/CzzbKQduHiBly/iof+kp C/7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=jedGpN/a9+f366iI54ipiE2vtlx7H76ElYh4hAwoonM=; fh=dfUUv0FvKdknTHlyWpSQp0jEw8xwF+Rpu8OiiA4X8Ds=; b=Pyqle54QjApu6lp7oKgq/lsqs+xsgeH40fP2W/GYCj59Aw3D4JMU4C3/iK85z5ezTG CbwHBvRd66c6e7Kn6KMQeyKxJvicmz/ARzmJupXF2LyDF/Cgjfy39wUbq5iwkSVKxLIE 7VJup1c5jMOVY9XjcuOp+OZTX6b433Z2tqGQ1HvqzhtXz6kUQicydH1xyE+OU1HmjT85 /wkAcuh+O5Q6c4XfnSjIcPzM26wo0+vfKDgfj9z/bKQfheQokzw7P20j4dJZpRWs1UJA vLCL5b06oP6TBtOm7Xh8mVNq2xLrSR6BvVeDt1Ieu8mLhZw3wuWUE0w1bOwDOuBGnV3P qQ9A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from howler.vger.email (howler.vger.email. [23.128.96.34]) by mx.google.com with ESMTPS id j190-20020a6380c7000000b005641315d956si9324500pgd.147.2023.10.09.02.22.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Oct 2023 02:22:58 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) client-ip=23.128.96.34; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by howler.vger.email (Postfix) with ESMTP id 3176A8042A8F; Mon, 9 Oct 2023 02:22:56 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at howler.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345789AbjJIJWp (ORCPT <rfc822;ezelljr.billy@gmail.com> + 18 others); Mon, 9 Oct 2023 05:22:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36348 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345707AbjJIJWl (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Mon, 9 Oct 2023 05:22:41 -0400 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 CB565CF for <linux-kernel@vger.kernel.org>; Mon, 9 Oct 2023 02:22:39 -0700 (PDT) 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 <ukl@pengutronix.de>) id 1qpmTE-0006tV-Cz; Mon, 09 Oct 2023 11:22:36 +0200 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 <ukl@pengutronix.de>) id 1qpmTE-000NWs-0L; Mon, 09 Oct 2023 11:22:36 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from <ukl@pengutronix.de>) id 1qpmTD-00C4pL-NR; Mon, 09 Oct 2023 11:22:35 +0200 From: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= <u.kleine-koenig@pengutronix.de> To: Linus Walleij <linus.walleij@linaro.org> Cc: Jesper Nilsson <jesper.nilsson@axis.com>, Lars Persson <lars.persson@axis.com>, linux-arm-kernel@axis.com, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 09/20] pinctrl: artpec6: Convert to platform remove callback returning void Date: Mon, 9 Oct 2023 10:38:45 +0200 Message-Id: <20231009083856.222030-10-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> References: <20231009083856.222030-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-Developer-Signature: v=1; a=openpgp-sha256; l=1758; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=REwHugWByH9MZiAq/xaUHUffBTFsuoloAV+rOifD5WE=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBlI7wJ0B8jigP3Dxi7n9R6rd5K2RcM9kcrzEbQ3 oJLJrwV1AyJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCZSO8CQAKCRCPgPtYfRL+ TjIfB/41KqJBdmph4C1MLpdcUe6c+RY3hCISKnr2/I2/lax9Tbb+w4xBwLLzqqNgdxopKbkGJEe 1uO2DLLNtbS6jFO+p9j0dJR47AR3ZYlIx0IlDrTsFBHFqSeCJZKn2VwyeNGwc+myk8VQniU0cJ3 ++SAUQqPTYzSOuO1LZXT1RPQexyt6bcMa/8p0T4/aOdQKGSta0+GEBcK1KyjJ6ktgKM/Av+DwUH E47opsIFgA7KXx9HkDDsxo+cj6pKu9KIcf8ubfLG4c61M6mB9OCvsea8NYQcOyzdN39TNndY0BA t/zFFA+FkJKmtFyo+p1HrKlBvSqRs85XfxEm9Tat9R7vsZP0 X-Developer-Key: i=u.kleine-koenig@pengutronix.de; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: 8bit 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 X-Spam-Status: No, score=2.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_SBL_CSS,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on howler.vger.email Precedence: bulk List-ID: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (howler.vger.email [0.0.0.0]); Mon, 09 Oct 2023 02:22:56 -0700 (PDT) X-Spam-Level: ** X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1779269243150981393 X-GMAIL-MSGID: 1779269243150981393 |
Series |
pinctrl: Convert to platform remove callback returning void
|
|
Commit Message
Uwe Kleine-König
Oct. 9, 2023, 8:38 a.m. UTC
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önig <u.kleine-koenig@pengutronix.de>
---
drivers/pinctrl/pinctrl-artpec6.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
Comments
On Mon, Oct 9, 2023 at 11:22 AM Uwe Kleine-König <u.kleine-koenig@pengutronix.de> wrote: > 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önig <u.kleine-koenig@pengutronix.de> Patch applied. Yours, Linus Walleij
diff --git a/drivers/pinctrl/pinctrl-artpec6.c b/drivers/pinctrl/pinctrl-artpec6.c index d6c9f9dcff97..dd93f124e0a0 100644 --- a/drivers/pinctrl/pinctrl-artpec6.c +++ b/drivers/pinctrl/pinctrl-artpec6.c @@ -970,13 +970,11 @@ static int artpec6_pmx_probe(struct platform_device *pdev) return 0; } -static int artpec6_pmx_remove(struct platform_device *pdev) +static void artpec6_pmx_remove(struct platform_device *pdev) { struct artpec6_pmx *pmx = platform_get_drvdata(pdev); pinctrl_unregister(pmx->pctl); - - return 0; } static const struct of_device_id artpec6_pinctrl_match[] = { @@ -990,7 +988,7 @@ static struct platform_driver artpec6_pmx_driver = { .of_match_table = artpec6_pinctrl_match, }, .probe = artpec6_pmx_probe, - .remove = artpec6_pmx_remove, + .remove_new = artpec6_pmx_remove, }; static int __init artpec6_pmx_init(void)