From: Dan Carpenter Date: Wed, 29 Jul 2015 10:17:06 +0000 (+0300) Subject: clk: versatile: off by one in clk_sp810_timerclken_of_get() X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=3294bee87091be5f179474f6c39d1d87769635e2;p=openwrt%2Fstaging%2Fblogic.git clk: versatile: off by one in clk_sp810_timerclken_of_get() The ">" should be ">=" or we end up reading beyond the end of the array. Fixes: 6e973d2c4385 ('clk: vexpress: Add separate SP810 driver') Signed-off-by: Dan Carpenter Acked-by: Pawel Moll Signed-off-by: Stephen Boyd --- diff --git a/drivers/clk/versatile/clk-sp810.c b/drivers/clk/versatile/clk-sp810.c index 64b0129a0216..7fbe4d4bf35e 100644 --- a/drivers/clk/versatile/clk-sp810.c +++ b/drivers/clk/versatile/clk-sp810.c @@ -129,8 +129,8 @@ static struct clk *clk_sp810_timerclken_of_get(struct of_phandle_args *clkspec, { struct clk_sp810 *sp810 = data; - if (WARN_ON(clkspec->args_count != 1 || clkspec->args[0] > - ARRAY_SIZE(sp810->timerclken))) + if (WARN_ON(clkspec->args_count != 1 || + clkspec->args[0] >= ARRAY_SIZE(sp810->timerclken))) return NULL; return sp810->timerclken[clkspec->args[0]].clk;