Re: [PATCH] pinctrl: core: delete incorrect free in pinctrl_enable()

From: Linus Walleij
Date: Thu Mar 28 2024 - 19:05:58 EST


On Thu, Mar 21, 2024 at 7:38 AM Dan Carpenter <dan.carpenter@linaroorg> wrote:

> The "pctldev" struct is allocated in devm_pinctrl_register_and_init().
> It's a devm_ managed pointer that is freed by devm_pinctrl_dev_release(),
> so freeing it in pinctrl_enable() will lead to a double free.
>
> The devm_pinctrl_dev_release() function frees the pindescs and destroys
> the mutex as well.
>
> Fixes: 6118714275f0 ("pinctrl: core: Fix pinctrl_register_and_init() with pinctrl_enable()")
> Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>

Great find!

Patch applied for fixes.

Thanks Dan,
Linus Walleij