summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAxel Lin <axel.lin@gmail.com>2011-04-02 21:20:24 -0700
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2011-04-02 21:47:53 -0700
commite28e1d93e9591d21e440f5210a9b4317c59445df (patch)
treeb0c9782ac5f716496fbc9b4036fcb63d7d7efa95
parent26fcd2a7618db6c16be6aa3e56c0f3c25381e5a3 (diff)
downloadlinux-e28e1d93e9591d21e440f5210a9b4317c59445df.tar.gz
linux-e28e1d93e9591d21e440f5210a9b4317c59445df.tar.bz2
linux-e28e1d93e9591d21e440f5210a9b4317c59445df.zip
Input: rpckbd - fix a leak of the IRQ during init failure
In rpckbd_open prror path, free_irq() was using NULL rather than the driver data as the data pointer so free_irq() wouldn't have matched. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
-rw-r--r--drivers/input/serio/rpckbd.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/input/serio/rpckbd.c b/drivers/input/serio/rpckbd.c
index 9da6fbcaaa7e..7ec3c97dc1b9 100644
--- a/drivers/input/serio/rpckbd.c
+++ b/drivers/input/serio/rpckbd.c
@@ -90,7 +90,7 @@ static int rpckbd_open(struct serio *port)
if (request_irq(IRQ_KEYBOARDTX, rpckbd_tx, 0, "rpckbd", port) != 0) {
printk(KERN_ERR "rpckbd.c: Could not allocate keyboard transmit IRQ\n");
- free_irq(IRQ_KEYBOARDRX, NULL);
+ free_irq(IRQ_KEYBOARDRX, port);
return -EBUSY;
}