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

From: Andy Shevchenko
Date: Sat Mar 04 2017 - 12:59:23 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?

> {

> }
> EXPORT_SYMBOL(sparse_keymap_free);

--
With Best Regards,
Andy Shevchenko