diff mbox

Input: h3600_ts: fix a leak of the IRQ during init failure

Message ID 1304266412.3000.4.camel@phoenix (mailing list archive)
State New, archived
Headers show

Commit Message

axel lin May 1, 2011, 4:13 p.m. UTC
In h3600ts_connect error path, free_irq() was using ts->dev rather than the
&ts->dev as the data pointer so free_irq() wouldn't have matched.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
---
 drivers/input/touchscreen/h3600_ts_input.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
diff mbox

Patch

diff --git a/drivers/input/touchscreen/h3600_ts_input.c b/drivers/input/touchscreen/h3600_ts_input.c
index 45f93d0..e45ae38 100644
--- a/drivers/input/touchscreen/h3600_ts_input.c
+++ b/drivers/input/touchscreen/h3600_ts_input.c
@@ -424,8 +424,8 @@  static int h3600ts_connect(struct serio *serio, struct serio_driver *drv)
 
 fail4:	serio_close(serio);
 fail3:	serio_set_drvdata(serio, NULL);
-	free_irq(IRQ_GPIO_BITSY_NPOWER_BUTTON, ts->dev);
-fail2:	free_irq(IRQ_GPIO_BITSY_ACTION_BUTTON, ts->dev);
+	free_irq(IRQ_GPIO_BITSY_NPOWER_BUTTON, &ts->dev);
+fail2:	free_irq(IRQ_GPIO_BITSY_ACTION_BUTTON, &ts->dev);
 fail1:	input_free_device(input_dev);
 	kfree(ts);
 	return err;