Message ID | 20230925095532.1984344-19-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:cae8:0:b0:403:3b70:6f57 with SMTP id r8csp1096613vqu; Mon, 25 Sep 2023 03:04:00 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHdQtDWBSlM6xRCTgcHMZ125Fj/2GgWi51o/0JmV4HNMLy9dfmVBb7q91ooeCDcIKI3IBi2 X-Received: by 2002:a17:90a:fa93:b0:267:a859:dfef with SMTP id cu19-20020a17090afa9300b00267a859dfefmr5622737pjb.27.1695636240081; Mon, 25 Sep 2023 03:04:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1695636240; cv=none; d=google.com; s=arc-20160816; b=GahtPcdAGQvZtuTiLm2WCgK5IxESMtm1/8MCtUGeIenw1AwY370KeTu0D4bmfT0r5v Ag+hYp9GJ8j7idx7whCJ5LVHVSOmXqWWOdt4xzvM980+7RJoYTaqhGXPb0pyKKqg3k6h 6ScGqyLSHaatoert6e0pHHcQZw/3L9maJ7CoiCHZRzjzOAvmpuEFj5KhlbI3UGobpXui g8tBy4FGlUVXyupX5uWJgJIhqaIDgLWDdWJOvp5XLhCe0gW1TTLFT4+odWO0oAGU0D4n KyLW+1g04vcjM1Bk58bjhkLx9Z8eoSWt401Le85QJXWeBCX7fdw2upnnj7xxgSFXZkn7 zmkA== 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=WKvarKadX0adZZO50p7Lyt5lL8ERuBZkxZUmYHktsO0=; fh=2TuEr3g/MnPAAl5Ft1GYg8Wf3jYiBZCefLIKGDQKcb4=; b=RpevwBsSYTU0sixb3EsuNoBFqXcTFSCGYeGnkhI2sOkngQNeesz5f526S80qsQvNY+ SnPltc465H/XX+XMDorSXP4Yj6UWqPRpwhWb1P5hHc7nBbqc7oqdqmrNGdroaf8BBJmH w5tBzi0JorFV7zrW7Ps0XGqGQ2zAqNQg+qBnExH1TsFjbwxbMqg3oCqdgGI7a4DUFMiW k2kfNn2UbwVtXsVaqzZI1FG8CALHsSKszae6hI8C7D09w6tLFNizHgqgXmygdePSRHAF abUJ09YnvgztXR8TLk1iEOFeddoSoYUGZ8VbBONEPwPf+aS+2oi85swyXc5CN0CrHcZ9 IGRg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id s11-20020a170902ea0b00b001c36705bce1si10259649plg.474.2023.09.25.03.03.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 25 Sep 2023 03:04:00 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 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 groat.vger.email (Postfix) with ESMTP id 88471811B060; Mon, 25 Sep 2023 02:57:48 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231222AbjIYJ5M (ORCPT <rfc822;pusanteemu@gmail.com> + 29 others); Mon, 25 Sep 2023 05:57:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48044 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230294AbjIYJ4E (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Mon, 25 Sep 2023 05:56:04 -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 7C982120 for <linux-kernel@vger.kernel.org>; Mon, 25 Sep 2023 02:55:50 -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 1qkiJY-0007xN-JT; Mon, 25 Sep 2023 11:55:40 +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 1qkiJX-008pzf-Kw; Mon, 25 Sep 2023 11:55:39 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from <ukl@pengutronix.de>) id 1qkiJX-004dlW-Bn; Mon, 25 Sep 2023 11:55:39 +0200 From: =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= <u.kleine-koenig@pengutronix.de> To: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>, Andy Gross <agross@kernel.org>, Bjorn Andersson <andersson@kernel.org>, Konrad Dybcio <konrad.dybcio@linaro.org> Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH 18/40] soc/qcom: icc-bwmon: Convert to platform remove callback returning void Date: Mon, 25 Sep 2023 11:55:09 +0200 Message-Id: <20230925095532.1984344-19-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230925095532.1984344-1-u.kleine-koenig@pengutronix.de> References: <20230925095532.1984344-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=1699; i=u.kleine-koenig@pengutronix.de; h=from:subject; bh=p7Y6ZSGoHFVnYoY5YFtM37zF1FolMcixHTRwjNtIzHc=; b=owGbwMvMwMXY3/A7olbonx/jabUkhlTBiJBJ/CGhc2LyEs3Dbh3sqbj1ycpf6/TTtmMXBZ/ZO zDU9At2MhqzMDByMciKKbLYN67JtKqSi+xc++8yzCBWJpApDFycAjCR6nccDH0KXNc8/1d9mMLY uVsvoCCz3STo0xFbTYdvSsfWMQrtaWfw2Ln//jReX/aAWXrirD3v77Y4ujcz+5rk5xj6uL+ZvVT 8ObNMzoboSxcimGTVSnk+hKUd5vESLVvUuYLtUsACefP2nOWnNWZeWL/7zB2Dq4btnouOf8+7yb 95T9wtxpcc7J03DlYJ5c0weHh7j6u3GNvWvD1ttRsri4J/sPw9p+i4o6r58jIG+VNNGjrSJ8qWb GnVNJpyTbbvbHr09F+cV1Pq7UU/NIXPfpvReitJaE3vj39/moufnUz5tu3fjR7+1JaVqZI2xz18 RZxd9vxL3j8lkddyg0nk8nkHZSdx3NLTcj16rP/jpc8dAA== 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=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.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 (groat.vger.email [0.0.0.0]); Mon, 25 Sep 2023 02:57:48 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1778003465865439024 X-GMAIL-MSGID: 1778003465865439024 |
Series |
soc: Convert to platform remove callback returning void
|
|
Commit Message
Uwe Kleine-König
Sept. 25, 2023, 9:55 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/soc/qcom/icc-bwmon.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
Comments
On 25.09.2023 11:55, Uwe Kleine-König 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> > --- Acked-by: Konrad Dybcio <konrad.dybcio@linaro.org> Konrad
On 25/09/2023 11:55, Uwe Kleine-König 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> > --- Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Best regards, Krzysztof
diff --git a/drivers/soc/qcom/icc-bwmon.c b/drivers/soc/qcom/icc-bwmon.c index adf2d523f103..656706259353 100644 --- a/drivers/soc/qcom/icc-bwmon.c +++ b/drivers/soc/qcom/icc-bwmon.c @@ -793,13 +793,11 @@ static int bwmon_probe(struct platform_device *pdev) return 0; } -static int bwmon_remove(struct platform_device *pdev) +static void bwmon_remove(struct platform_device *pdev) { struct icc_bwmon *bwmon = platform_get_drvdata(pdev); bwmon_disable(bwmon); - - return 0; } static const struct icc_bwmon_data msm8998_bwmon_data = { @@ -862,7 +860,7 @@ MODULE_DEVICE_TABLE(of, bwmon_of_match); static struct platform_driver bwmon_driver = { .probe = bwmon_probe, - .remove = bwmon_remove, + .remove_new = bwmon_remove, .driver = { .name = "qcom-bwmon", .of_match_table = bwmon_of_match,