2024-04-02 10:54:57

by Harshit Mogalapalli

[permalink] [raw]
Subject: [PATCH] drm/panthor: Fix NULL vs IS_ERR() bug in panthor_probe()

The devm_drm_dev_alloc() function returns error pointers.
Update the error handling to check for error pointers instead of NULL.

Fixes: 4bdca1150792 ("drm/panthor: Add the driver frontend block")
Signed-off-by: Harshit Mogalapalli <[email protected]>
---
This is spotted by smatch and the patch is only compile tested
---
drivers/gpu/drm/panthor/panthor_drv.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/panthor/panthor_drv.c b/drivers/gpu/drm/panthor/panthor_drv.c
index 11b3ccd58f85..1b588b37db98 100644
--- a/drivers/gpu/drm/panthor/panthor_drv.c
+++ b/drivers/gpu/drm/panthor/panthor_drv.c
@@ -1385,7 +1385,7 @@ static int panthor_probe(struct platform_device *pdev)

ptdev = devm_drm_dev_alloc(&pdev->dev, &panthor_drm_driver,
struct panthor_device, base);
- if (!ptdev)
+ if (IS_ERR(ptdev))
return -ENOMEM;

platform_set_drvdata(pdev, ptdev);
--
2.39.3



2024-04-02 14:03:42

by Boris Brezillon

[permalink] [raw]
Subject: Re: [PATCH] drm/panthor: Fix NULL vs IS_ERR() bug in panthor_probe()

On Tue, 2 Apr 2024 03:40:40 -0700
Harshit Mogalapalli <[email protected]> wrote:

> The devm_drm_dev_alloc() function returns error pointers.
> Update the error handling to check for error pointers instead of NULL.
>
> Fixes: 4bdca1150792 ("drm/panthor: Add the driver frontend block")
> Signed-off-by: Harshit Mogalapalli <[email protected]>

Reviewed-by: Boris Brezillon <[email protected]>

> ---
> This is spotted by smatch and the patch is only compile tested
> ---
> drivers/gpu/drm/panthor/panthor_drv.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/panthor/panthor_drv.c b/drivers/gpu/drm/panthor/panthor_drv.c
> index 11b3ccd58f85..1b588b37db98 100644
> --- a/drivers/gpu/drm/panthor/panthor_drv.c
> +++ b/drivers/gpu/drm/panthor/panthor_drv.c
> @@ -1385,7 +1385,7 @@ static int panthor_probe(struct platform_device *pdev)
>
> ptdev = devm_drm_dev_alloc(&pdev->dev, &panthor_drm_driver,
> struct panthor_device, base);
> - if (!ptdev)
> + if (IS_ERR(ptdev))
> return -ENOMEM;
>
> platform_set_drvdata(pdev, ptdev);


2024-04-03 07:23:28

by Boris Brezillon

[permalink] [raw]
Subject: Re: [PATCH] drm/panthor: Fix NULL vs IS_ERR() bug in panthor_probe()

On Tue, 2 Apr 2024 03:40:40 -0700
Harshit Mogalapalli <[email protected]> wrote:

> The devm_drm_dev_alloc() function returns error pointers.
> Update the error handling to check for error pointers instead of NULL.
>
> Fixes: 4bdca1150792 ("drm/panthor: Add the driver frontend block")
> Signed-off-by: Harshit Mogalapalli <[email protected]>

Queued to drm-misc-next.

Thanks,

Boris

> ---
> This is spotted by smatch and the patch is only compile tested
> ---
> drivers/gpu/drm/panthor/panthor_drv.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/panthor/panthor_drv.c b/drivers/gpu/drm/panthor/panthor_drv.c
> index 11b3ccd58f85..1b588b37db98 100644
> --- a/drivers/gpu/drm/panthor/panthor_drv.c
> +++ b/drivers/gpu/drm/panthor/panthor_drv.c
> @@ -1385,7 +1385,7 @@ static int panthor_probe(struct platform_device *pdev)
>
> ptdev = devm_drm_dev_alloc(&pdev->dev, &panthor_drm_driver,
> struct panthor_device, base);
> - if (!ptdev)
> + if (IS_ERR(ptdev))
> return -ENOMEM;
>
> platform_set_drvdata(pdev, ptdev);