Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1714787 > unrolled thread

[PATCH] pinctrl: rza1: off by one in rza1_parse_gpiochip()

Started byDan Carpenter <dan.carpenter@oracle.com>
First post2017-08-18 12:40 +0200
Last post2017-08-23 09:50 +0200
Articles 4 — 4 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] pinctrl: rza1: off by one in rza1_parse_gpiochip() Dan Carpenter <dan.carpenter@oracle.com> - 2017-08-18 12:40 +0200
    Re: [PATCH] pinctrl: rza1: off by one in rza1_parse_gpiochip() Linus Walleij <linus.walleij@linaro.org> - 2017-08-23 09:30 +0200
    Re: [PATCH] pinctrl: rza1: off by one in rza1_parse_gpiochip() Geert Uytterhoeven <geert@linux-m68k.org> - 2017-08-23 09:40 +0200
      Re: [PATCH] pinctrl: rza1: off by one in rza1_parse_gpiochip() jmondi <jacopo@jmondi.org> - 2017-08-23 09:50 +0200

#1714787 — [PATCH] pinctrl: rza1: off by one in rza1_parse_gpiochip()

FromDan Carpenter <dan.carpenter@oracle.com>
Date2017-08-18 12:40 +0200
Subject[PATCH] pinctrl: rza1: off by one in rza1_parse_gpiochip()
Message-ID<ufMR5-2kL-27@gated-at.bofh.it>
The rza1_pctl->ports[] array has RZA1_NPORTS (12) elements.  The > here
should be >= to prevent an out of bounds access.

Fixes: 5a49b644b307 ("pinctrl: Renesas RZ/A1 pin and gpio controller")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>

diff --git a/drivers/pinctrl/pinctrl-rza1.c b/drivers/pinctrl/pinctrl-rza1.c
index 7e30134b3d18..464dbf2f0816 100644
--- a/drivers/pinctrl/pinctrl-rza1.c
+++ b/drivers/pinctrl/pinctrl-rza1.c
@@ -1088,7 +1088,7 @@ static int rza1_parse_gpiochip(struct rza1_pinctrl *rza1_pctl,
 	 */
 	pinctrl_base = of_args.args[1];
 	gpioport = RZA1_PIN_ID_TO_PORT(pinctrl_base);
-	if (gpioport > RZA1_NPORTS) {
+	if (gpioport >= RZA1_NPORTS) {
 		dev_err(rza1_pctl->dev,
 			"Invalid values in property %s\n", list_name);
 		return -EINVAL;

[toc] | [next] | [standalone]


#1718100

FromLinus Walleij <linus.walleij@linaro.org>
Date2017-08-23 09:30 +0200
Message-ID<uhygW-5YE-7@gated-at.bofh.it>
In reply to#1714787
On Fri, Aug 18, 2017 at 12:32 PM, Dan Carpenter
<dan.carpenter@oracle.com> wrote:

> The rza1_pctl->ports[] array has RZA1_NPORTS (12) elements.  The > here
> should be >= to prevent an out of bounds access.
>
> Fixes: 5a49b644b307 ("pinctrl: Renesas RZ/A1 pin and gpio controller")
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
>
> diff --git a/drivers/pinctrl/pinctrl-rza1.c b/drivers/pinctrl/pinctrl-rza1.c
> index 7e30134b3d18..464dbf2f0816 100644
> --- a/drivers/pinctrl/pinctrl-rza1.c
> +++ b/drivers/pinctrl/pinctrl-rza1.c
> @@ -1088,7 +1088,7 @@ static int rza1_parse_gpiochip(struct rza1_pinctrl *rza1_pctl,
>          */
>         pinctrl_base = of_args.args[1];
>         gpioport = RZA1_PIN_ID_TO_PORT(pinctrl_base);
> -       if (gpioport > RZA1_NPORTS) {
> +       if (gpioport >= RZA1_NPORTS) {
>                 dev_err(rza1_pctl->dev,
>                         "Invalid values in property %s\n", list_name);
>                 return -EINVAL;

Geert/Jacopo, can any of you ACK this?

Yours,
Linus Walleij

[toc] | [prev] | [next] | [standalone]


#1718111

FromGeert Uytterhoeven <geert@linux-m68k.org>
Date2017-08-23 09:40 +0200
Message-ID<uhyqE-62f-77@gated-at.bofh.it>
In reply to#1714787
On Fri, Aug 18, 2017 at 12:32 PM, Dan Carpenter
<dan.carpenter@oracle.com> wrote:
> The rza1_pctl->ports[] array has RZA1_NPORTS (12) elements.  The > here
> should be >= to prevent an out of bounds access.
>
> Fixes: 5a49b644b307 ("pinctrl: Renesas RZ/A1 pin and gpio controller")
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>

Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

[toc] | [prev] | [next] | [standalone]


#1718114

Fromjmondi <jacopo@jmondi.org>
Date2017-08-23 09:50 +0200
Message-ID<uhyAj-66m-39@gated-at.bofh.it>
In reply to#1718111
Hi Linus,
   sorry for being late.

With Geert's approval I guess my ack is not that necessary, but...

On Wed, Aug 23, 2017 at 09:35:42AM +0200, Geert Uytterhoeven wrote:
> On Fri, Aug 18, 2017 at 12:32 PM, Dan Carpenter
> <dan.carpenter@oracle.com> wrote:
> > The rza1_pctl->ports[] array has RZA1_NPORTS (12) elements.  The > here
> > should be >= to prevent an out of bounds access.
> >
> > Fixes: 5a49b644b307 ("pinctrl: Renesas RZ/A1 pin and gpio controller")
> > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
>
> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>

Acked-by: Jacopo Mondi <jacopo@jmondi.org>

>
> Gr{oetje,eeting}s,
>
>                         Geert
>
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
>
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
>                                 -- Linus Torvalds

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web