linux-stable/drivers/pinctrl
Antonio Borneo a9659016f9 pinctrl: stm32: fix array read out of bound
[ Upstream commit edd48fd9d4 ]

The existing code does not verify if the "tentative" index exceeds
the size of the array, causing out of bound read.
Issue identified with kasan.

Check the index before using it.

Signed-off-by: Antonio Borneo <antonio.borneo@foss.st.com>
Fixes: 32c170ff15 ("pinctrl: stm32: set default gpio line names using pin names")
Link: https://lore.kernel.org/r/20231107110520.4449-1-antonio.borneo@foss.st.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-12-08 08:52:21 +01:00
..
actions pinctrl: actions: remove MODULE_LICENSE in non-modules 2023-04-13 13:13:50 -07:00
aspeed pinctrl: aspeed: Revert "Force to disable the function's signal" 2023-01-30 23:51:03 +01:00
bcm pinctrl: nsp-gpio: Silence probe deferral messages 2023-08-10 10:41:20 +02:00
berlin pinctrl: berlin: as370: Use devm_platform_get_and_ioremap_resource() 2023-07-16 23:08:22 +02:00
cirrus pinctrl: cs42l43: Add support for the cs42l43 2023-08-17 12:06:11 +01:00
freescale pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
intel pinctrl: baytrail: fix debounce disable case 2023-11-20 11:59:24 +01:00
mediatek pinctrl: mediatek: assign functions to configure pin bias on MT7986 2023-08-21 12:39:11 +02:00
meson pinctrl: use capital "OR" for multiple licenses in SPDX 2023-08-23 14:31:58 +02:00
mvebu intel-pinctrl for v6.6-1 2023-08-25 15:47:18 +02:00
nomadik Core changes: 2023-02-22 11:05:56 -08:00
nuvoton pinctrl: nuvoton: wpcm450: fix out of bounds write 2023-09-12 09:03:18 +02:00
nxp pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
pxa pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
qcom pinctrl: qcom: lpass-lpi: fix concurrent register updates 2023-10-16 14:56:49 +02:00
renesas pinctrl: renesas: rzg2l: Make reverse order of enable() for disable() 2023-11-20 11:59:25 +01:00
samsung pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
spear pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
sprd pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
starfive pinctrl: starfive: jh7110: Add system pm ops to save and restore context 2023-09-12 10:09:40 +02:00
stm32 pinctrl: stm32: fix array read out of bound 2023-12-08 08:52:21 +01:00
sunplus pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
sunxi pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
tegra Revert "pinctrl: tegra: Add support to display pin function" 2023-09-27 10:51:57 +02:00
ti pinctrl: ti: Convert to devm_platform_get_and_ioremap_resource() 2023-07-16 23:08:22 +02:00
uniphier pinctrl: uniphier: Add missing header(s) 2022-10-24 17:06:47 +03:00
visconti
vt8500
core.c pinctrl: avoid reload of p state in list iteration 2023-12-08 08:52:15 +01:00
core.h pinctrl: Move for_each_maps() to namespace and hide iterator inside 2022-11-14 14:19:33 +01:00
devicetree.c pinctrl: devicetree: fix null pointer dereferencing in pinctrl_dt_to_map 2022-11-10 12:26:18 +01:00
devicetree.h pinctrl: Clean up headers 2022-10-24 17:06:48 +03:00
Kconfig pinctrl: pinctrl-oxnas: remove obsolete pinctrl driver 2023-08-15 11:06:32 +02:00
Makefile pinctrl: pinctrl-oxnas: remove obsolete pinctrl driver 2023-08-15 11:06:32 +02:00
pinconf-generic.c pinctrl: pinconf-generic: add missing of_node_put() 2022-11-25 10:49:28 +01:00
pinconf.c
pinconf.h pinctrl: Clean up headers 2022-10-24 17:06:48 +03:00
pinctrl-amd.c Pin control bulk changes for the v6.6 kernel cycle: 2023-08-30 19:36:19 -07:00
pinctrl-amd.h pinctrl: amd: Drop pull up select configuration 2023-07-13 00:04:43 +02:00
pinctrl-apple-gpio.c
pinctrl-artpec6.c
pinctrl-as3722.c
pinctrl-at91-pio4.c pinctrl: at91-pio4: drop useless check in atmel_conf_pin_config_dbg_show() 2023-08-10 10:10:01 +02:00
pinctrl-at91.c pinctrl: at91: Switch to use DEFINE_NOIRQ_DEV_PM_OPS() helper 2023-08-21 18:58:10 +03:00
pinctrl-at91.h
pinctrl-axp209.c pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
pinctrl-bm1880.c
pinctrl-cy8c95x0.c pinctrl: cy8c95x0: Add reset support 2023-07-20 21:18:21 +02:00
pinctrl-da850-pupd.c pinctrl: da850-pupd: Drop empty platform remove function 2022-12-29 02:02:46 +01:00
pinctrl-da9062.c
pinctrl-digicolor.c pinctrl: digicolor: Use proper headers and drop OF dependency 2023-01-16 15:14:03 +01:00
pinctrl-equilibrium.c pinctrl: equilibrium: Convert to immutable irq_chip 2023-04-14 11:08:17 +02:00
pinctrl-equilibrium.h pinctrl: equilibrium: Convert to immutable irq_chip 2023-04-14 11:08:17 +02:00
pinctrl-falcon.c pinctrl: lantiq: Remove unused of_gpio.h inclusion 2023-06-16 15:04:34 +02:00
pinctrl-gemini.c
pinctrl-ingenic.c Pin control changes for the v6.2 kernel cycle: 2022-12-13 13:03:06 -08:00
pinctrl-k210.c pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
pinctrl-keembay.c
pinctrl-lantiq.c
pinctrl-lantiq.h pinctrl: lantiq: Remove unsued declaration ltq_pinctrl_unregister() 2023-09-11 15:42:12 +02:00
pinctrl-loongson2.c pinctrl: loongson2: Fix some const correctness 2022-11-25 11:41:01 +01:00
pinctrl-lpc18xx.c pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
pinctrl-max77620.c
pinctrl-mcp23s08.c pinctrl: mcp23s08: Convert to immutable irq_chip 2023-04-14 11:08:17 +02:00
pinctrl-mcp23s08.h pinctrl: mcp23s08: Convert to immutable irq_chip 2023-04-14 11:08:17 +02:00
pinctrl-mcp23s08_i2c.c pinctrl: Switch i2c drivers back to use .probe() 2023-05-29 15:16:30 +02:00
pinctrl-mcp23s08_spi.c pinctrl: mcp23s08: check return value of devm_kasprintf() 2023-08-10 09:56:31 +02:00
pinctrl-microchip-sgpio.c pinctrl: microchip-sgpio: check return value of devm_kasprintf() 2023-06-16 15:01:45 +02:00
pinctrl-mlxbf3.c pinctrl: mlxbf3: Remove gpio_disable_free() 2023-08-25 15:44:15 +02:00
pinctrl-ocelot.c pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
pinctrl-palmas.c pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
pinctrl-pic32.c pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
pinctrl-pic32.h
pinctrl-pistachio.c pinctrl: pistachio: Convert to immutable irq_chip 2023-04-20 16:07:40 +02:00
pinctrl-rk805.c pinctrl: rk805: Add rk806 pinctrl support 2023-05-15 16:21:01 +01:00
pinctrl-rockchip.c pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
pinctrl-rockchip.h
pinctrl-single.c pinctrl: single: Add compatible for ti,am654-padconf 2023-08-10 10:39:17 +02:00
pinctrl-st.c pinctrl: st: Convert to immutable irq_chip 2023-04-14 11:08:17 +02:00
pinctrl-stmfx.c pinctrl: stmfx: Do not check for 0 return after calling platform_get_irq() 2023-08-10 10:11:33 +02:00
pinctrl-sx150x.c pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
pinctrl-tb10x.c
pinctrl-utils.c
pinctrl-utils.h pinctrl: Clean up headers 2022-10-24 17:06:48 +03:00
pinctrl-xway.c pinctrl: lantiq: Remove unused of_gpio.h inclusion 2023-06-16 15:04:34 +02:00
pinctrl-zynq.c
pinctrl-zynqmp.c pinctrl: pinctrl-zynqmp: Add support for output-enable and bias-high impedance 2023-08-07 10:48:03 +02:00
pinmux.c pinctrl: pinmux: handle radix_tree_insert() errors in pinmux_generic_add_function() 2023-07-28 22:08:58 +02:00
pinmux.h pinctrl: Clean up headers 2022-10-24 17:06:48 +03:00