diff options
| author | Surendra Singh Chouhan <kr494167@gmail.com> | 2026-07-29 13:24:37 +0530 |
|---|---|---|
| committer | Linus Walleij <linusw@kernel.org> | 2026-08-03 09:44:17 +0200 |
| commit | 17007cd700601777d9ee203a13d97e64ece3a10f (patch) | |
| tree | b7891f2e6cbd935408e25d26e7662e21c6b6b31a /tools/perf/scripts/python | |
| parent | f9af1329b98a478f4bba605ec6db429ef0e38d54 (diff) | |
pinctrl: generic: free maps on pinctrl_generic_to_map() failure
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@gmail.com>
Signed-off-by: Linus Walleij <linusw@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions
