2013-09-10 22:56:15

by Wei Yongjun

[permalink] [raw]
Subject: [PATCH] drm/msm: fix return value check in ERR_PTR()

From: Wei Yongjun <[email protected]>

In case of error, the function drm_prime_pages_to_sg() returns ERR_PTR()
and never returns NULL. The NULL test in the return value check should
be replaced with IS_ERR().

Signed-off-by: Wei Yongjun <[email protected]>
---
drivers/gpu/drm/msm/msm_gem.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/msm/msm_gem.c b/drivers/gpu/drm/msm/msm_gem.c
index 6b5a6c8..3462def 100644
--- a/drivers/gpu/drm/msm/msm_gem.c
+++ b/drivers/gpu/drm/msm/msm_gem.c
@@ -40,9 +40,9 @@ static struct page **get_pages(struct drm_gem_object *obj)
}

msm_obj->sgt = drm_prime_pages_to_sg(p, npages);
- if (!msm_obj->sgt) {
+ if (IS_ERR(msm_obj->sgt)) {
dev_err(dev->dev, "failed to allocate sgt\n");
- return ERR_PTR(-ENOMEM);
+ return ERR_CAST(msm_obj->sgt);
}

msm_obj->pages = p;


2013-09-10 23:33:30

by Rob Clark

[permalink] [raw]
Subject: Re: [PATCH] drm/msm: fix return value check in ERR_PTR()

On Tue, Sep 10, 2013 at 6:56 PM, Wei Yongjun <[email protected]> wrote:
> From: Wei Yongjun <[email protected]>
>
> In case of error, the function drm_prime_pages_to_sg() returns ERR_PTR()
> and never returns NULL. The NULL test in the return value check should
> be replaced with IS_ERR().
>
> Signed-off-by: Wei Yongjun <[email protected]>

good catch, thanks

Signed-off-by: Rob Clark <[email protected]>

> ---
> drivers/gpu/drm/msm/msm_gem.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/msm_gem.c b/drivers/gpu/drm/msm/msm_gem.c
> index 6b5a6c8..3462def 100644
> --- a/drivers/gpu/drm/msm/msm_gem.c
> +++ b/drivers/gpu/drm/msm/msm_gem.c
> @@ -40,9 +40,9 @@ static struct page **get_pages(struct drm_gem_object *obj)
> }
>
> msm_obj->sgt = drm_prime_pages_to_sg(p, npages);
> - if (!msm_obj->sgt) {
> + if (IS_ERR(msm_obj->sgt)) {
> dev_err(dev->dev, "failed to allocate sgt\n");
> - return ERR_PTR(-ENOMEM);
> + return ERR_CAST(msm_obj->sgt);
> }
>
> msm_obj->pages = p;
>