Dne sreda, 12. julij 2023 ob 19:19:59 CEST je Mark Brown napisal(a): > The sunxi pinctrl has a fixed size array it uses to store regulators used > in the driver. There is currently nothing that ensures that the number of > elements in the array is large enough to map the regulators defined by the > individual SoCs. While this is currently the case having an explicit check > in there will make life easier for anyone debugging memory issues that > manifest in the driver so let's add one. > > Signed-off-by: Mark Brown <broonie@xxxxxxxxxx> Reviewed-by: Jernej Skrabec <jernej.skrabec@xxxxxxxxx> Best regards, Jernej > --- > drivers/pinctrl/sunxi/pinctrl-sunxi.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/pinctrl/sunxi/pinctrl-sunxi.c > b/drivers/pinctrl/sunxi/pinctrl-sunxi.c index 1dc1882cbdd7..1d1cd3d6d379 > 100644 > --- a/drivers/pinctrl/sunxi/pinctrl-sunxi.c > +++ b/drivers/pinctrl/sunxi/pinctrl-sunxi.c > @@ -848,6 +848,9 @@ static int sunxi_pmx_request(struct pinctrl_dev > *pctldev, unsigned offset) char supply[16]; > int ret; > > + if (WARN_ON_ONCE(bank_offset >= ARRAY_SIZE(pctl->regulators))) > + return -EINVAL; > + > if (reg) { > refcount_inc(&s_reg->refcount); > return 0; > > --- > base-commit: 06c2afb862f9da8dc5efa4b6076a0e48c3fbaaa5 > change-id: 20230711-pinctrl-sunxi-boudns-95bf5da3d075 > > Best regards,