Message ID | X8XqwK0z//8sSWJR@mwanda (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | iio: sx9310: Off by one in sx9310_read_thresh() | expand |
Hi, On Mon, Nov 30, 2020 at 11:03 PM Dan Carpenter <dan.carpenter@oracle.com> wrote: > > This > should be >= to prevent reading one element beyond the end of > the sx9310_pthresh_codes[] array. > > Fixes: ad2b473e2ba3 ("iio: sx9310: Support setting proximity thresholds") > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> > --- > drivers/iio/proximity/sx9310.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Reviewed-by: Douglas Anderson <dianders@chromium.org>
Quoting Dan Carpenter (2020-11-30 23:03:28) > This > should be >= to prevent reading one element beyond the end of > the sx9310_pthresh_codes[] array. > > Fixes: ad2b473e2ba3 ("iio: sx9310: Support setting proximity thresholds") > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> > --- Thanks! Reviewed-by: Stephen Boyd <swboyd@chromium.org>
On Tue, 1 Dec 2020 10:03:28 +0300 Dan Carpenter <dan.carpenter@oracle.com> wrote: > This > should be >= to prevent reading one element beyond the end of > the sx9310_pthresh_codes[] array. > > Fixes: ad2b473e2ba3 ("iio: sx9310: Support setting proximity thresholds") > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Applied to the fixes-togreg branch of iio.git which won't go anywhere now until after rc1 (and is based on the stuff queued up for the merge window) thanks, Jonathan > --- > drivers/iio/proximity/sx9310.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/iio/proximity/sx9310.c b/drivers/iio/proximity/sx9310.c > index a2f820997afc..62eacb22e9bc 100644 > --- a/drivers/iio/proximity/sx9310.c > +++ b/drivers/iio/proximity/sx9310.c > @@ -601,7 +601,7 @@ static int sx9310_read_thresh(struct sx9310_data *data, > return ret; > > regval = FIELD_GET(SX9310_REG_PROX_CTRL8_9_PTHRESH_MASK, regval); > - if (regval > ARRAY_SIZE(sx9310_pthresh_codes)) > + if (regval >= ARRAY_SIZE(sx9310_pthresh_codes)) > return -EINVAL; > > *val = sx9310_pthresh_codes[regval];
diff --git a/drivers/iio/proximity/sx9310.c b/drivers/iio/proximity/sx9310.c index a2f820997afc..62eacb22e9bc 100644 --- a/drivers/iio/proximity/sx9310.c +++ b/drivers/iio/proximity/sx9310.c @@ -601,7 +601,7 @@ static int sx9310_read_thresh(struct sx9310_data *data, return ret; regval = FIELD_GET(SX9310_REG_PROX_CTRL8_9_PTHRESH_MASK, regval); - if (regval > ARRAY_SIZE(sx9310_pthresh_codes)) + if (regval >= ARRAY_SIZE(sx9310_pthresh_codes)) return -EINVAL; *val = sx9310_pthresh_codes[regval];
This > should be >= to prevent reading one element beyond the end of the sx9310_pthresh_codes[] array. Fixes: ad2b473e2ba3 ("iio: sx9310: Support setting proximity thresholds") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> --- drivers/iio/proximity/sx9310.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)