[PATCH] remoteproc: mediatek: Dereferencing a pointer that might be NULL

Jason-ch Chen posted 1 patch 1 year, 6 months ago
drivers/remoteproc/mtk_scp.c | 3 +++
1 file changed, 3 insertions(+)
[PATCH] remoteproc: mediatek: Dereferencing a pointer that might be NULL
Posted by Jason-ch Chen 1 year, 6 months ago
From: jason-ch chen <Jason-ch.Chen@mediatek.com>

The res might be NULL when calling resource_size.

Signed-off-by: jason-ch chen <Jason-ch.Chen@mediatek.com>
---
 drivers/remoteproc/mtk_scp.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c
index eacdf241f4ef..863d18f63f58 100644
--- a/drivers/remoteproc/mtk_scp.c
+++ b/drivers/remoteproc/mtk_scp.c
@@ -829,6 +829,9 @@ static int scp_probe(struct platform_device *pdev)
 	platform_set_drvdata(pdev, scp);
 
 	res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "sram");
+	if (!res)
+		return -ENODEV;
+
 	scp->sram_base = devm_ioremap_resource(dev, res);
 	if (IS_ERR((__force void *)scp->sram_base)) {
 		dev_err(dev, "Failed to parse and map sram memory\n");
-- 
2.37.3
Re: [PATCH] remoteproc: mediatek: Dereferencing a pointer that might be NULL
Posted by Mathieu Poirier 1 year, 6 months ago
On Fri, 3 Mar 2023 at 03:28, Jason-ch Chen <jason-ch.chen@mediatek.com> wrote:
>
> From: jason-ch chen <Jason-ch.Chen@mediatek.com>
>
> The res might be NULL when calling resource_size.
>

"resource_size" ?  What is that?

> Signed-off-by: jason-ch chen <Jason-ch.Chen@mediatek.com>
> ---
>  drivers/remoteproc/mtk_scp.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c
> index eacdf241f4ef..863d18f63f58 100644
> --- a/drivers/remoteproc/mtk_scp.c
> +++ b/drivers/remoteproc/mtk_scp.c
> @@ -829,6 +829,9 @@ static int scp_probe(struct platform_device *pdev)
>         platform_set_drvdata(pdev, scp);
>
>         res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "sram");
> +       if (!res)
> +               return -ENODEV;
> +

Please have a look at the implementation of devm_ioremap_resource()
along with the function it calls and let me know if your patch is
needed.

>         scp->sram_base = devm_ioremap_resource(dev, res);
>         if (IS_ERR((__force void *)scp->sram_base)) {
>                 dev_err(dev, "Failed to parse and map sram memory\n");
> --
> 2.37.3
>
Re: [PATCH] remoteproc: mediatek: Dereferencing a pointer that might be NULL
Posted by Jason-ch Chen (陳建豪) 1 year, 6 months ago
Hi Mathieu,

On Fri, 2023-03-03 at 11:20 -0700, Mathieu Poirier wrote:
> On Fri, 3 Mar 2023 at 03:28, Jason-ch Chen <
> jason-ch.chen@mediatek.com> wrote:
> > 
> > From: jason-ch chen <Jason-ch.Chen@mediatek.com>
> > 
> > The res might be NULL when calling resource_size.
> > 
> 
> "resource_size" ?  What is that?
> 
> > Signed-off-by: jason-ch chen <Jason-ch.Chen@mediatek.com>
> > ---
> >  drivers/remoteproc/mtk_scp.c | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> > diff --git a/drivers/remoteproc/mtk_scp.c
> > b/drivers/remoteproc/mtk_scp.c
> > index eacdf241f4ef..863d18f63f58 100644
> > --- a/drivers/remoteproc/mtk_scp.c
> > +++ b/drivers/remoteproc/mtk_scp.c
> > @@ -829,6 +829,9 @@ static int scp_probe(struct platform_device
> > *pdev)
> >         platform_set_drvdata(pdev, scp);
> > 
> >         res = platform_get_resource_byname(pdev, IORESOURCE_MEM,
> > "sram");
> > +       if (!res)
> > +               return -ENODEV;
> > +
> 
> Please have a look at the implementation of devm_ioremap_resource()
> along with the function it calls and let me know if your patch is
> needed.
> 
Thanks for your reply.
It seems is patch is not needed.
> >         scp->sram_base = devm_ioremap_resource(dev, res);
> >         if (IS_ERR((__force void *)scp->sram_base)) {
> >                 dev_err(dev, "Failed to parse and map sram
> > memory\n");
> > --
> > 2.37.3
> >