Re: [PATCH v3] pinctrl: generic: free maps on pinctrl_generic_to_map() failure
Linus Walleij <[email protected]> Mon, 3 Aug 2026 09:45:04 +0200
| Newsgroups | org.kernel.vger.linux-gpio,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <CAD++jLmYviP9b1eTGws4qD6JSU42Sxmw5cSKTWZZGjqPa3TL2Q@mail.gmail.com> |
On Wed, Jul 29, 2026 at 9:54=E2=80=AFAM <[email protected]> wrote: > From: Surendra Singh Chouhan <[email protected]> > > 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 pinc= trl_generic_pins_function_dt_node_to_map()") > Signed-off-by: Surendra Singh Chouhan <[email protected]> Patch applied, thanks Surendra! Yours, Linus Walleij