syscon_regmap_lookup_by_phandle() returns either a valid pointer to
struct regmap or ERR_PTR() error value, check for NULL is invalid and
on error path may lead to oops, the change corrects the check.
Signed-off-by: Vladimir Zapolskiy <[email protected]>
---
drivers/remoteproc/st_remoteproc.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/remoteproc/st_remoteproc.c b/drivers/remoteproc/st_remoteproc.c
index 6bb04d4..6f056ca 100644
--- a/drivers/remoteproc/st_remoteproc.c
+++ b/drivers/remoteproc/st_remoteproc.c
@@ -189,9 +189,9 @@ static int st_rproc_parse_dt(struct platform_device *pdev)
}
ddata->boot_base = syscon_regmap_lookup_by_phandle(np, "st,syscfg");
- if (!ddata->boot_base) {
+ if (IS_ERR(ddata->boot_base)) {
dev_err(dev, "Boot base not found\n");
- return -EINVAL;
+ return PTR_ERR(ddata->boot_base);
}
err = of_property_read_u32_index(np, "st,syscfg", 1,
--
2.1.4
On Sat, 19 Mar 2016, Vladimir Zapolskiy wrote:
> syscon_regmap_lookup_by_phandle() returns either a valid pointer to
> struct regmap or ERR_PTR() error value, check for NULL is invalid and
> on error path may lead to oops, the change corrects the check.
>
> Signed-off-by: Vladimir Zapolskiy <[email protected]>
> ---
> drivers/remoteproc/st_remoteproc.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
Acked-by: Lee Jones <[email protected]>
> diff --git a/drivers/remoteproc/st_remoteproc.c b/drivers/remoteproc/st_remoteproc.c
> index 6bb04d4..6f056ca 100644
> --- a/drivers/remoteproc/st_remoteproc.c
> +++ b/drivers/remoteproc/st_remoteproc.c
> @@ -189,9 +189,9 @@ static int st_rproc_parse_dt(struct platform_device *pdev)
> }
>
> ddata->boot_base = syscon_regmap_lookup_by_phandle(np, "st,syscfg");
> - if (!ddata->boot_base) {
> + if (IS_ERR(ddata->boot_base)) {
> dev_err(dev, "Boot base not found\n");
> - return -EINVAL;
> + return PTR_ERR(ddata->boot_base);
> }
>
> err = of_property_read_u32_index(np, "st,syscfg", 1,
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
On Sat, Mar 19, 2016 at 6:31 AM, Vladimir Zapolskiy <[email protected]> wrote:
> syscon_regmap_lookup_by_phandle() returns either a valid pointer to
> struct regmap or ERR_PTR() error value, check for NULL is invalid and
> on error path may lead to oops, the change corrects the check.
>
> Signed-off-by: Vladimir Zapolskiy <[email protected]>
Applied, with Lee's ack.
Thanks,
Bjorn