Re: [PATCHv3 6/7] input/cma3000_d0x: Unwind reverse order of init

From: Dmitry Torokhov
Date: Tue Oct 18 2011 - 12:53:45 EST


On Tuesday, October 18, 2011 08:48:05 AM Ricardo Ribalda Delgado wrote:
> Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@xxxxxxxxx>
> ---
> drivers/input/misc/cma3000_d0x.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/input/misc/cma3000_d0x.c
> b/drivers/input/misc/cma3000_d0x.c index bbda34c..96a46d4 100644
> --- a/drivers/input/misc/cma3000_d0x.c
> +++ b/drivers/input/misc/cma3000_d0x.c
> @@ -459,8 +459,8 @@ EXPORT_SYMBOL(cma3000_init);
>
> void cma3000_exit(struct cma3000_accl_data *data)
> {
> - free_irq(data->irq, data);
> input_unregister_device(data->input_dev);
> + free_irq(data->irq, data);
> kfree(data);
> }
> EXPORT_SYMBOL(cma3000_exit);

No, the original is much safer. Unless you 110% sure you won't get
an interrupt between unregistering device (which is most likely
will free the associated data structure) and freeing irq it is
better to leave it as is.

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/