drm/etnaviv: change return type of etnaviv_gem_obj_add to void
authorLucas Stach <l.stach@pengutronix.de>
Fri, 17 Nov 2017 11:17:14 +0000 (12:17 +0100)
committerLucas Stach <l.stach@pengutronix.de>
Tue, 2 Jan 2018 16:07:41 +0000 (17:07 +0100)
This function never fails, as it does nothing more than adding the GEM
object to the global device list. Making this explicit through the void
return type allows to drop some unnecessary error handling.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
drivers/gpu/drm/etnaviv/etnaviv_gem.c
drivers/gpu/drm/etnaviv/etnaviv_gem.h
drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c

index f75105b..a52220e 100644 (file)
@@ -586,7 +586,7 @@ void etnaviv_gem_free_object(struct drm_gem_object *obj)
        kfree(etnaviv_obj);
 }
 
-int etnaviv_gem_obj_add(struct drm_device *dev, struct drm_gem_object *obj)
+void etnaviv_gem_obj_add(struct drm_device *dev, struct drm_gem_object *obj)
 {
        struct etnaviv_drm_private *priv = dev->dev_private;
        struct etnaviv_gem_object *etnaviv_obj = to_etnaviv_bo(obj);
@@ -594,8 +594,6 @@ int etnaviv_gem_obj_add(struct drm_device *dev, struct drm_gem_object *obj)
        mutex_lock(&priv->gem_lock);
        list_add_tail(&etnaviv_obj->gem_node, &priv->gem_list);
        mutex_unlock(&priv->gem_lock);
-
-       return 0;
 }
 
 static int etnaviv_gem_new_impl(struct drm_device *dev, u32 size, u32 flags,
@@ -678,11 +676,7 @@ int etnaviv_gem_new_handle(struct drm_device *dev, struct drm_file *file,
        if (ret)
                goto fail;
 
-       ret = etnaviv_gem_obj_add(dev, obj);
-       if (ret < 0) {
-               drm_gem_object_put_unlocked(obj);
-               return ret;
-       }
+       etnaviv_gem_obj_add(dev, obj);
 
        ret = drm_gem_handle_create(file, obj, handle);
 
@@ -895,12 +889,10 @@ int etnaviv_gem_new_userptr(struct drm_device *dev, struct drm_file *file,
        etnaviv_obj->userptr.ro = !(flags & ETNA_USERPTR_WRITE);
        get_task_struct(current);
 
-       ret = etnaviv_gem_obj_add(dev, &etnaviv_obj->base);
-       if (ret)
-               goto unreference;
+       etnaviv_gem_obj_add(dev, &etnaviv_obj->base);
 
        ret = drm_gem_handle_create(file, &etnaviv_obj->base, handle);
-unreference:
+
        /* drop reference from allocate - handle holds it now */
        drm_gem_object_put_unlocked(&etnaviv_obj->base);
        return ret;
index e437fba..00bd9c8 100644 (file)
@@ -117,7 +117,7 @@ int etnaviv_gem_wait_bo(struct etnaviv_gpu *gpu, struct drm_gem_object *obj,
 int etnaviv_gem_new_private(struct drm_device *dev, size_t size, u32 flags,
        struct reservation_object *robj, const struct etnaviv_gem_ops *ops,
        struct etnaviv_gem_object **res);
-int etnaviv_gem_obj_add(struct drm_device *dev, struct drm_gem_object *obj);
+void etnaviv_gem_obj_add(struct drm_device *dev, struct drm_gem_object *obj);
 struct page **etnaviv_gem_get_pages(struct etnaviv_gem_object *obj);
 void etnaviv_gem_put_pages(struct etnaviv_gem_object *obj);
 
index ea87bf8..5704305 100644 (file)
@@ -142,9 +142,7 @@ struct drm_gem_object *etnaviv_gem_prime_import_sg_table(struct drm_device *dev,
        if (ret)
                goto fail;
 
-       ret = etnaviv_gem_obj_add(dev, &etnaviv_obj->base);
-       if (ret)
-               goto fail;
+       etnaviv_gem_obj_add(dev, &etnaviv_obj->base);
 
        return &etnaviv_obj->base;