mtd: rawnand: fsl_upm: Fix an off-by one test in fun_exec_op()
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Wed, 19 Jul 2023 21:55:01 +0000 (23:55 +0200)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Thu, 27 Jul 2023 14:54:23 +0000 (16:54 +0200)
commitc6abce60338aa2080973cd95be0aedad528bb41f
tree9dcf402e8269e0899b9c6a616c306240c5d4cbbf
parent71c8f9cf2623d0db79665f876b95afcdd8214aec
mtd: rawnand: fsl_upm: Fix an off-by one test in fun_exec_op()

'op-cs' is copied in 'fun->mchip_number' which is used to access the
'mchip_offsets' and the 'rnb_gpio' arrays.
These arrays have NAND_MAX_CHIPS elements, so the index must be below this
limit.

Fix the sanity check in order to avoid the NAND_MAX_CHIPS value. This
would lead to out-of-bound accesses.

Fixes: 54309d657767 ("mtd: rawnand: fsl_upm: Implement exec_op()")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Reviewed-by: Dan Carpenter <dan.carpenter@linaro.org>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/cd01cba1c7eda58bdabaae174c78c067325803d2.1689803636.git.christophe.jaillet@wanadoo.fr
drivers/mtd/nand/raw/fsl_upm.c