Merge tag 'drm-for-v4.8' of git://people.freedesktop.org/~airlied/linux
[deliverable/linux.git] / drivers / gpu / drm / etnaviv / etnaviv_gem.c
index 8c6f750634af4bd9ed56e073411575f9f397b4c5..5ce3603e6eacb1aab7c59ed66399f743d5346990 100644 (file)
@@ -535,8 +535,7 @@ void etnaviv_gem_describe_objects(struct etnaviv_drm_private *priv,
 
 static void etnaviv_gem_shmem_release(struct etnaviv_gem_object *etnaviv_obj)
 {
-       if (etnaviv_obj->vaddr)
-               vunmap(etnaviv_obj->vaddr);
+       vunmap(etnaviv_obj->vaddr);
        put_pages(etnaviv_obj);
 }
 
@@ -670,9 +669,7 @@ static struct drm_gem_object *__etnaviv_gem_new(struct drm_device *dev,
        return obj;
 
 fail:
-       if (obj)
-               drm_gem_object_unreference_unlocked(obj);
-
+       drm_gem_object_unreference_unlocked(obj);
        return ERR_PTR(ret);
 }
 
@@ -916,15 +913,12 @@ int etnaviv_gem_new_userptr(struct drm_device *dev, struct drm_file *file,
        get_task_struct(current);
 
        ret = etnaviv_gem_obj_add(dev, &etnaviv_obj->base);
-       if (ret) {
-               drm_gem_object_unreference_unlocked(&etnaviv_obj->base);
-               return ret;
-       }
+       if (ret)
+               goto unreference;
 
        ret = drm_gem_handle_create(file, &etnaviv_obj->base, handle);
-
+unreference:
        /* drop reference from allocate - handle holds it now */
        drm_gem_object_unreference_unlocked(&etnaviv_obj->base);
-
        return ret;
 }
This page took 0.02549 seconds and 5 git commands to generate.