[PATCH RESEND] drm/vc4: Fix an error code vc4_create_object()
Neil Roberts
nroberts at igalia.com
Thu Feb 25 14:57:14 UTC 2021
Dan Carpenter <dan.carpenter at oracle.com> writes:
> The vc4_create_object() needs to return NULL on error, not error
> pointers. If it returns an error pointer then that will lead to an
> Oops in the callers. Fortunately, in current kernels small allocations
> always succed so this will never happen.
>
> Fixes: c826a6e10644 ("drm/vc4: Add a BO cache.")
> Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com>
> ---
> I sent this patch last June but it was never applied.
>
> drivers/gpu/drm/vc4/vc4_bo.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/vc4/vc4_bo.c b/drivers/gpu/drm/vc4/vc4_bo.c
> index 72d30d90b856c..0af246a5609ca 100644
> --- a/drivers/gpu/drm/vc4/vc4_bo.c
> +++ b/drivers/gpu/drm/vc4/vc4_bo.c
> @@ -389,7 +389,7 @@ struct drm_gem_object *vc4_create_object(struct drm_device *dev, size_t size)
>
> bo = kzalloc(sizeof(*bo), GFP_KERNEL);
> if (!bo)
> - return ERR_PTR(-ENOMEM);
> + return NULL;
This change looks right to me. For reference, the code that calls it
looks like this:
if (drm->driver->gem_create_object)
gem_obj = drm->driver->gem_create_object(drm, size);
/* … */
if (!gem_obj)
return ERR_PTR(-ENOMEM);
Reviewed-by: Neil Roberts <nroberts at igalia.com>
Regards,
- Neil
More information about the dri-devel
mailing list