From: Ville Syrjälä Date: Wed, 14 Dec 2011 22:11:40 +0000 (+0200) Subject: staging: mrst: Return ERR_PTR() from fb_create hook X-Git-Tag: 2.1b_release~456 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3c8107e72f9d6b838df58414b4443690378add6b;p=kernel%2Fkernel-mfld-blackbay.git staging: mrst: Return ERR_PTR() from fb_create hook In case of an error, the caller expects ERR_PTR() to be used instead of returning NULL. Signed-off-by: Ville Syrjälä Acked-by: Pauli Nieminen Reviewed-by: Jani Nikula Signed-off-by: Kirill A. Shutemov --- diff --git a/drivers/staging/mrst/drv/psb_fb.c b/drivers/staging/mrst/drv/psb_fb.c index 875c73a..f190232 100644 --- a/drivers/staging/mrst/drv/psb_fb.c +++ b/drivers/staging/mrst/drv/psb_fb.c @@ -248,7 +248,7 @@ static struct drm_framebuffer *psb_user_framebuffer_create DRM_ERROR("Cannot get meminfo for handle 0x%x\n", (IMG_UINT32)hKernelMemInfo); - return NULL; + return ERR_PTR(ret); } DRM_DEBUG("Got Kernel MemInfo for handle %p\n", hKernelMemInfo); @@ -256,7 +256,7 @@ static struct drm_framebuffer *psb_user_framebuffer_create /* JB: TODO not drop, make smarter */ size = psKernelMemInfo->ui32AllocSize; if (size < r->height * r->pitch) - return NULL; + return ERR_PTR(-ENOSPC); /* JB: TODO not drop, refcount buffer */ /* return psb_framebuffer_create(dev, r, bo); */ @@ -264,7 +264,7 @@ static struct drm_framebuffer *psb_user_framebuffer_create fb = psb_framebuffer_create(dev, r, (void *)psKernelMemInfo); if (!fb) { DRM_ERROR("failed to allocate fb.\n"); - return NULL; + return ERR_PTR(-ENOMEM); } psbfb = to_psb_fb(fb); @@ -279,7 +279,7 @@ static struct drm_framebuffer *psb_user_framebuffer_create if (ret) { DRM_ERROR("map meminfo for 0x%x failed\n", (IMG_UINT32)hKernelMemInfo); - return NULL; + return ERR_PTR(ret); } psbfb->offset = (offset << PAGE_SHIFT); } else { @@ -287,7 +287,7 @@ static struct drm_framebuffer *psb_user_framebuffer_create } info = framebuffer_alloc(0, &dev->pdev->dev); if (!info) - return NULL; + return ERR_PTR(-ENOMEM); strcpy(info->fix.id, "psbfb");