diff options
| author | Chen Ni <nichen@iscas.ac.cn> | 2023-10-31 08:08:07 +0000 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-02-21 13:49:08 +0100 |
| commit | 1a1cfd1456639a8c41e8436ff3bafeeb806792e5 (patch) | |
| tree | cf243023c4473982bc5931023c0e17b5c877486e /drivers/pinctrl | |
| parent | 75285cb2b49a9bfe15fc22aecab45ef25d50e6f2 (diff) | |
| download | linux-1a1cfd1456639a8c41e8436ff3bafeeb806792e5.tar.gz linux-1a1cfd1456639a8c41e8436ff3bafeeb806792e5.tar.bz2 linux-1a1cfd1456639a8c41e8436ff3bafeeb806792e5.zip | |
pinctrl: stm32: Add check for devm_kcalloc
[ Upstream commit b0eeba527e704d6023a6cd9103f929226e326b03 ]
Add check for the return value of devm_kcalloc() and return the error
if it fails in order to avoid NULL pointer dereference.
Fixes: 32c170ff15b0 ("pinctrl: stm32: set default gpio line names using pin names")
Signed-off-by: Chen Ni <nichen@iscas.ac.cn>
Acked-by: Valentin Caron <valentin.caron@foss.st.com>
Link: https://lore.kernel.org/r/20231031080807.3600656-1-nichen@iscas.ac.cn
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Stable-dep-of: 451bc9aea9a1 ("pinctrl: stm32: Add check for clk_enable()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/pinctrl')
| -rw-r--r-- | drivers/pinctrl/stm32/pinctrl-stm32.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/pinctrl/stm32/pinctrl-stm32.c b/drivers/pinctrl/stm32/pinctrl-stm32.c index ae2b14654475..7599c66abdf0 100644 --- a/drivers/pinctrl/stm32/pinctrl-stm32.c +++ b/drivers/pinctrl/stm32/pinctrl-stm32.c @@ -1377,6 +1377,11 @@ static int stm32_gpiolib_register_bank(struct stm32_pinctrl *pctl, struct fwnode } names = devm_kcalloc(dev, npins, sizeof(char *), GFP_KERNEL); + if (!names) { + err = -ENOMEM; + goto err_clk; + } + for (i = 0; i < npins; i++) { stm32_pin = stm32_pctrl_get_desc_pin_from_gpio(pctl, bank, i); if (stm32_pin && stm32_pin->pin.name) |
