drm/i915/gem: Remove some unnecessary code
authorThomas Hellström <thomas.hellstrom@linux.intel.com>
Fri, 4 Mar 2022 08:26:41 +0000 (09:26 +0100)
committerThomas Hellström <thomas.hellstrom@linux.intel.com>
Mon, 7 Mar 2022 07:51:18 +0000 (08:51 +0100)
The test for vma should always return true, and when assigning -EBUSY
to ret, the variable should already have that value.

Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Reviewed-by: Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220304082641.308069-4-thomas.hellstrom@linux.intel.com
drivers/gpu/drm/i915/i915_gem.c

index c26110a..9747924 100644 (file)
@@ -118,6 +118,7 @@ int i915_gem_object_unbind(struct drm_i915_gem_object *obj,
                           unsigned long flags)
 {
        struct intel_runtime_pm *rpm = &to_i915(obj->base.dev)->runtime_pm;
+       bool vm_trylock = !!(flags & I915_GEM_OBJECT_UNBIND_VM_TRYLOCK);
        LIST_HEAD(still_in_list);
        intel_wakeref_t wakeref;
        struct i915_vma *vma;
@@ -170,26 +171,21 @@ try_again:
                 * and destroy the vma from under us.
                 */
 
-               if (vma) {
-                       bool vm_trylock = !!(flags & I915_GEM_OBJECT_UNBIND_VM_TRYLOCK);
-                       ret = -EBUSY;
-                       if (flags & I915_GEM_OBJECT_UNBIND_ASYNC) {
-                               assert_object_held(vma->obj);
-                               ret = i915_vma_unbind_async(vma, vm_trylock);
-                       }
+               ret = -EBUSY;
+               if (flags & I915_GEM_OBJECT_UNBIND_ASYNC) {
+                       assert_object_held(vma->obj);
+                       ret = i915_vma_unbind_async(vma, vm_trylock);
+               }
 
-                       if (ret == -EBUSY && (flags & I915_GEM_OBJECT_UNBIND_ACTIVE ||
-                                             !i915_vma_is_active(vma))) {
-                               if (vm_trylock) {
-                                       if (mutex_trylock(&vma->vm->mutex)) {
-                                               ret = __i915_vma_unbind(vma);
-                                               mutex_unlock(&vma->vm->mutex);
-                                       } else {
-                                               ret = -EBUSY;
-                                       }
-                               } else {
-                                       ret = i915_vma_unbind(vma);
+               if (ret == -EBUSY && (flags & I915_GEM_OBJECT_UNBIND_ACTIVE ||
+                                     !i915_vma_is_active(vma))) {
+                       if (vm_trylock) {
+                               if (mutex_trylock(&vma->vm->mutex)) {
+                                       ret = __i915_vma_unbind(vma);
+                                       mutex_unlock(&vma->vm->mutex);
                                }
+                       } else {
+                               ret = i915_vma_unbind(vma);
                        }
                }