From: Sasha Levin <sashal@kernel.org> To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Zheng Yongjun <zhengyongjun3@huawei.com>, Dmitry Torokhov <dmitry.torokhov@gmail.com>, Sasha Levin <sashal@kernel.org>, mcoquelin.stm32@gmail.com, alexandre.torgue@foss.st.com, linux-input@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org Subject: [PATCH AUTOSEL 4.19 05/11] Input: stmfts - fix reference leak in stmfts_input_open Date: Wed, 6 Apr 2022 21:16:02 -0400 [thread overview] Message-ID: <20220407011609.115258-5-sashal@kernel.org> (raw) In-Reply-To: <20220407011609.115258-1-sashal@kernel.org> From: Zheng Yongjun <zhengyongjun3@huawei.com> [ Upstream commit 26623eea0da3476446909af96c980768df07bbd9 ] pm_runtime_get_sync() will increment pm usage counter even it failed. Forgetting to call pm_runtime_put_noidle will result in reference leak in stmfts_input_open, so we should fix it. Signed-off-by: Zheng Yongjun <zhengyongjun3@huawei.com> Link: https://lore.kernel.org/r/20220317131604.53538-1-zhengyongjun3@huawei.com Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Sasha Levin <sashal@kernel.org> --- drivers/input/touchscreen/stmfts.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/input/touchscreen/stmfts.c b/drivers/input/touchscreen/stmfts.c index cd8805d71d97..be1dd504d5b1 100644 --- a/drivers/input/touchscreen/stmfts.c +++ b/drivers/input/touchscreen/stmfts.c @@ -339,11 +339,11 @@ static int stmfts_input_open(struct input_dev *dev) err = pm_runtime_get_sync(&sdata->client->dev); if (err < 0) - return err; + goto out; err = i2c_smbus_write_byte(sdata->client, STMFTS_MS_MT_SENSE_ON); if (err) - return err; + goto out; mutex_lock(&sdata->mutex); sdata->running = true; @@ -366,7 +366,9 @@ static int stmfts_input_open(struct input_dev *dev) "failed to enable touchkey\n"); } - return 0; +out: + pm_runtime_put_noidle(&sdata->client->dev); + return err; } static void stmfts_input_close(struct input_dev *dev) -- 2.35.1
WARNING: multiple messages have this Message-ID (diff)
From: Sasha Levin <sashal@kernel.org> To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Zheng Yongjun <zhengyongjun3@huawei.com>, Dmitry Torokhov <dmitry.torokhov@gmail.com>, Sasha Levin <sashal@kernel.org>, mcoquelin.stm32@gmail.com, alexandre.torgue@foss.st.com, linux-input@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org Subject: [PATCH AUTOSEL 4.19 05/11] Input: stmfts - fix reference leak in stmfts_input_open Date: Wed, 6 Apr 2022 21:16:02 -0400 [thread overview] Message-ID: <20220407011609.115258-5-sashal@kernel.org> (raw) In-Reply-To: <20220407011609.115258-1-sashal@kernel.org> From: Zheng Yongjun <zhengyongjun3@huawei.com> [ Upstream commit 26623eea0da3476446909af96c980768df07bbd9 ] pm_runtime_get_sync() will increment pm usage counter even it failed. Forgetting to call pm_runtime_put_noidle will result in reference leak in stmfts_input_open, so we should fix it. Signed-off-by: Zheng Yongjun <zhengyongjun3@huawei.com> Link: https://lore.kernel.org/r/20220317131604.53538-1-zhengyongjun3@huawei.com Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Sasha Levin <sashal@kernel.org> --- drivers/input/touchscreen/stmfts.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/input/touchscreen/stmfts.c b/drivers/input/touchscreen/stmfts.c index cd8805d71d97..be1dd504d5b1 100644 --- a/drivers/input/touchscreen/stmfts.c +++ b/drivers/input/touchscreen/stmfts.c @@ -339,11 +339,11 @@ static int stmfts_input_open(struct input_dev *dev) err = pm_runtime_get_sync(&sdata->client->dev); if (err < 0) - return err; + goto out; err = i2c_smbus_write_byte(sdata->client, STMFTS_MS_MT_SENSE_ON); if (err) - return err; + goto out; mutex_lock(&sdata->mutex); sdata->running = true; @@ -366,7 +366,9 @@ static int stmfts_input_open(struct input_dev *dev) "failed to enable touchkey\n"); } - return 0; +out: + pm_runtime_put_noidle(&sdata->client->dev); + return err; } static void stmfts_input_close(struct input_dev *dev) -- 2.35.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2022-04-07 1:31 UTC|newest] Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-04-07 1:15 [PATCH AUTOSEL 4.19 01/11] gfs2: assign rgrp glock before compute_bitstructs Sasha Levin 2022-04-07 1:15 ` [Cluster-devel] " Sasha Levin 2022-04-07 1:15 ` [PATCH AUTOSEL 4.19 02/11] um: Cleanup syscall_handler_t definition/cast, fix warning Sasha Levin 2022-04-07 1:15 ` Sasha Levin 2022-04-07 1:16 ` [PATCH AUTOSEL 4.19 03/11] um: port_user: Improve error handling when port-helper is not found Sasha Levin 2022-04-07 1:16 ` Sasha Levin 2022-04-07 1:16 ` [PATCH AUTOSEL 4.19 04/11] Input: add bounds checking to input_set_capability() Sasha Levin 2022-04-07 1:16 ` Sasha Levin [this message] 2022-04-07 1:16 ` [PATCH AUTOSEL 4.19 05/11] Input: stmfts - fix reference leak in stmfts_input_open Sasha Levin 2022-04-07 1:16 ` [PATCH AUTOSEL 4.19 06/11] crypto: stm32 - fix reference leak in stm32_crc_remove Sasha Levin 2022-04-07 1:16 ` Sasha Levin 2022-04-07 1:16 ` [PATCH AUTOSEL 4.19 07/11] MIPS: lantiq: check the return value of kzalloc() Sasha Levin 2022-04-07 1:16 ` [PATCH AUTOSEL 4.19 08/11] drbd: remove usage of list iterator variable after loop Sasha Levin 2022-04-07 1:16 ` [PATCH AUTOSEL 4.19 09/11] ARM: 9191/1: arm/stacktrace, kasan: Silence KASAN warnings in unwind_frame() Sasha Levin 2022-04-07 1:16 ` Sasha Levin 2022-04-07 1:16 ` [PATCH AUTOSEL 4.19 10/11] nilfs2: fix lockdep warnings in page operations for btree nodes Sasha Levin 2022-04-07 1:16 ` Sasha Levin 2022-04-07 1:16 ` [PATCH AUTOSEL 4.19 11/11] nilfs2: fix lockdep warnings during disk space reclamation Sasha Levin 2022-04-07 1:16 ` Sasha Levin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20220407011609.115258-5-sashal@kernel.org \ --to=sashal@kernel.org \ --cc=alexandre.torgue@foss.st.com \ --cc=dmitry.torokhov@gmail.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-input@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-stm32@st-md-mailman.stormreply.com \ --cc=mcoquelin.stm32@gmail.com \ --cc=stable@vger.kernel.org \ --cc=zhengyongjun3@huawei.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.