Hi Dmitry, On Tue, Oct 7, 2014 at 10:08 PM, Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> wrote: > On Tue, Oct 07, 2014 at 01:00:49PM +0530, Pramod Gurav wrote: >> This change introduces a label to call cancel_delayed_work_sync in >> failure path. >> >> Cc: Michael Hennerich <michael.hennerich@xxxxxxxxxx> >> Cc: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> >> Cc: linux-input@xxxxxxxxxxxxxxx >> Signed-off-by: Pramod Gurav <pramod.gurav@xxxxxxxxxxxxxxx> >> --- >> drivers/input/keyboard/adp5588-keys.c | 4 +++- >> 1 file changed, 3 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/input/keyboard/adp5588-keys.c b/drivers/input/keyboard/adp5588-keys.c >> index 5ef7fcf..b494062 100644 >> --- a/drivers/input/keyboard/adp5588-keys.c >> +++ b/drivers/input/keyboard/adp5588-keys.c >> @@ -559,7 +559,7 @@ static int adp5588_probe(struct i2c_client *client, >> error = input_register_device(input); >> if (error) { >> dev_err(&client->dev, "unable to register input device\n"); >> - goto err_free_mem; >> + goto err_delayed_work; >> } >> >> error = request_irq(client->irq, adp5588_irq, >> @@ -592,6 +592,8 @@ static int adp5588_probe(struct i2c_client *client, >> err_unreg_dev: >> input_unregister_device(input); >> input = NULL; >> + err_delayed_work: >> + cancel_delayed_work_sync(&kpad->work); > > We do not need to have a separate label, just need to cancel workqueue > after freeing interrupt. I adjusted the patch and applied. > Thanks. I saw the change in your tree. Shouldn't cancel_delayed_work_sync(&kpad->work) be called under label err_free_mem so that it will executed in case adp5588_read, input_register_device, request_irq etc. Or else we will still have workqueue instance hanging around. > Thanks. > > -- > Dmitry > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- Thanks and Regards Pramod -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html