On Thu, Mar 2, 2017 at 2:02 PM, Michał Kępień <ker...@kempniu.pl> 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?

>  {

>  }
>  EXPORT_SYMBOL(sparse_keymap_free);

-- 
With Best Regards,
Andy Shevchenko

Reply via email to