Re: [PATCH v2] pinctrl: generic: free maps on pinctrl_generic_to_map() failure
From: Linus Walleij
Date: Wed Jul 29 2026 - 04:01:09 EST
On Sat, Jul 25, 2026 at 4:22 AM <kr494167@xxxxxxxxx> wrote:
> From: Surendra Singh Chouhan <kr494167@xxxxxxxxx>
>
> pinctrl_generic_to_map() parses DT configuration and allocates pinctrl
> maps via pinctrl_utils_reserve_map().
>
> If subsequent steps (such as pinctrl_utils_add_map_mux(),
> pinctrl_generic_add_group(), pinconf_generic_parse_dt_config(), or
> pinctrl_utils_add_map_configs()) return an error, *maps may contain
> partially allocated map entries. Returning the error directly without
> freeing *maps leaks the allocated mapping memory across all drivers
> that rely on pinctrl_generic_to_map().
>
> Fix this by calling pinctrl_utils_free_map() and resetting *maps,
> *num_maps, and *num_reserved_maps in the error path of
> pinctrl_generic_to_map().
>
> Fixes: aaaf31be0426 ("pinctrl: extract pinctrl_generic_to_map() from pinctrl_generic_pins_function_dt_node_to_map()")
> Signed-off-by: Surendra Singh Chouhan <kr494167@xxxxxxxxx>
This does not apply to the current "devel" branch in the pinctrl tree:
https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl.git/log/?h=devel
Please rebase (some things may be fixed already) and resend.
Yours,
Linus Walleij