Re: [PATCH v2] Input: sparse-keymap - use a managed allocation for keymap copy

From: MichaÅ KÄpieÅ
Date: Mon Mar 06 2017 - 02:16:08 EST


> On Thu, Mar 2, 2017 at 2:02 PM, MichaÅ KÄpieÅ <kernel@xxxxxxxxxx> wrote:
> > Some platform drivers use devm_input_allocate_device() together with
> > sparse_keymap_setup() in their .probe callbacks. While using the former
> > simplifies error handling, using the latter necessitates calling
> > sparse_keymap_free() in the error path and upon module unloading to
> > avoid leaking the copy of the keymap allocated by sparse_keymap_setup().
> >
> > To help prevent such leaks and enable simpler error handling, make
> > sparse_keymap_setup() use devm_kcalloc() to allocate memory for the
> > keymap copy so that it gets automatically freed.
>
> > + * Since sparse_keymap_setup() now uses a managed allocation for the
> > + * keymap copy, use of this function is deprecated.
>
> So...
>
> > */
> > void sparse_keymap_free(struct input_dev *dev)
>
> ... add __deprecated then?

Sure, I can do that if Dmitry recognizes this patch as otherwise sane.
I have never used that attribute before, so thanks for the tip.

--
Best regards,
MichaÅ KÄpieÅ