OSDN Git Service

soc: imx: imx8m-blk-ctrl: off by one in imx8m_blk_ctrl_xlate()
authorDan Carpenter <dan.carpenter@oracle.com>
Mon, 11 Oct 2021 12:36:38 +0000 (15:36 +0300)
committerShawn Guo <shawnguo@kernel.org>
Fri, 15 Oct 2021 03:10:05 +0000 (11:10 +0800)
The > comparison should be >= to prevent reading one element beyond the
end of the array.  The onecell_data->domains[] array is allocated in
imx8m_blk_ctrl_probe() and it has "onecell_data->num_domains" elements.

Fixes: 5b340e7813d4 ("soc: imx: add i.MX8M blk-ctrl driver")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
drivers/soc/imx/imx8m-blk-ctrl.c

index e172d29..519b365 100644 (file)
@@ -139,7 +139,7 @@ imx8m_blk_ctrl_xlate(struct of_phandle_args *args, void *data)
        unsigned int index = args->args[0];
 
        if (args->args_count != 1 ||
-           index > onecell_data->num_domains)
+           index >= onecell_data->num_domains)
                return ERR_PTR(-EINVAL);
 
        return onecell_data->domains[index];