linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Input: s6sy761 - add missed input_unregister_device
@ 2020-05-07 15:11 Chuhong Yuan
  2020-05-07 16:00 ` Dmitry Torokhov
  0 siblings, 1 reply; 2+ messages in thread
From: Chuhong Yuan @ 2020-05-07 15:11 UTC (permalink / raw)
  Cc: Dmitry Torokhov, linux-input, linux-kernel, Chuhong Yuan

This driver calls input_register_device() in probe, but misses
input_unregister_device() in probe failure and remove.
Add the missed function calls to fix it.

Signed-off-by: Chuhong Yuan <hslester96@gmail.com>
---
 drivers/input/touchscreen/s6sy761.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/drivers/input/touchscreen/s6sy761.c b/drivers/input/touchscreen/s6sy761.c
index b63d7fdf0cd2..cd8a7bd9be1e 100644
--- a/drivers/input/touchscreen/s6sy761.c
+++ b/drivers/input/touchscreen/s6sy761.c
@@ -464,21 +464,28 @@ static int s6sy761_probe(struct i2c_client *client,
 					IRQF_TRIGGER_LOW | IRQF_ONESHOT,
 					"s6sy761_irq", sdata);
 	if (err)
-		return err;
+		goto err_unregister;
 
 	err = devm_device_add_group(&client->dev, &s6sy761_attribute_group);
 	if (err)
-		return err;
+		goto err_unregister;
 
 	pm_runtime_enable(&client->dev);
 
 	return 0;
+
+err_unregister:
+	input_unregister_device(sdata->input);
+	return err;
 }
 
 static int s6sy761_remove(struct i2c_client *client)
 {
+	struct s6sy761_data *sdata = i2c_get_clientdata(client);
+
 	pm_runtime_disable(&client->dev);
 
+	input_unregister_device(sdata->input);
 	return 0;
 }
 
-- 
2.26.2


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] Input: s6sy761 - add missed input_unregister_device
  2020-05-07 15:11 [PATCH] Input: s6sy761 - add missed input_unregister_device Chuhong Yuan
@ 2020-05-07 16:00 ` Dmitry Torokhov
  0 siblings, 0 replies; 2+ messages in thread
From: Dmitry Torokhov @ 2020-05-07 16:00 UTC (permalink / raw)
  To: Chuhong Yuan; +Cc: linux-input, linux-kernel

Hi Chuhong,

On Thu, May 07, 2020 at 11:11:15PM +0800, Chuhong Yuan wrote:
> This driver calls input_register_device() in probe, but misses
> input_unregister_device() in probe failure and remove.
> Add the missed function calls to fix it.

The input device in question is devm-managed and therefore does not need
explicit unregistering.

Thanks.

-- 
Dmitry

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-05-07 16:00 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-07 15:11 [PATCH] Input: s6sy761 - add missed input_unregister_device Chuhong Yuan
2020-05-07 16:00 ` Dmitry Torokhov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).