Messages in this thread Patch in this message | | | Subject | [PATCH RESEND] drivers/misc: fsa9480: fix a leak of the IRQ during init failure | From | Axel Lin <> | Date | Tue, 23 Aug 2011 13:57:58 +0800 |
| |
Make sure we are passing the same cookie in all calls to request_threaded_irq() and free_irq().
Signed-off-by: Axel Lin <axel.lin@gmail.com> --- drivers/misc/fsa9480.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/misc/fsa9480.c b/drivers/misc/fsa9480.c index 5325a7e..27dc0d2 100644 --- a/drivers/misc/fsa9480.c +++ b/drivers/misc/fsa9480.c @@ -455,7 +455,7 @@ static int __devinit fsa9480_probe(struct i2c_client *client, fail2: if (client->irq) - free_irq(client->irq, NULL); + free_irq(client->irq, usbsw); fail1: i2c_set_clientdata(client, NULL); kfree(usbsw); @@ -466,7 +466,7 @@ static int __devexit fsa9480_remove(struct i2c_client *client) { struct fsa9480_usbsw *usbsw = i2c_get_clientdata(client); if (client->irq) - free_irq(client->irq, NULL); + free_irq(client->irq, usbsw); i2c_set_clientdata(client, NULL); sysfs_remove_group(&client->dev.kobj, &fsa9480_group); -- 1.7.4.1
| |