Re: [PATCH 1/2] OMAP: Add keypad driver
From: Dmitry Torokhov
Date: Wed Jul 26 2006 - 09:27:37 EST
On 7/26/06, Komal Shah <komal_shah802003@xxxxxxxxx> wrote:
Andrew/Tony/Richard/Dmitry,
This is a revised patch as per the review comments from the Dmitry
on thread:
http://lkml.org/lkml/2006/7/25/279
Please review it and give me the Ack if looks ok.
Komal,
You may not call input_free_device() after calling
input_unregister_device() in the error path because unregister will
drop the reference to the device and since it was the last (and only)
reference it will free the device. input_free_device() coming after
that will try to free already freed memory.
You have several options:
1. Have separate error paths for before and after input_register_device()
2. Set input_dev = NULL after calling input_unregister_device() -
input-free-device() handles NULLs just fine.
3. Take an extra reference with input_get_device() before calling
input_unregister_device(). This way the device won't actually be freed
until you call input_free_device() later.
--
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/