]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
drm/i915: Add buffer to inactive list immediately during fault
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 14 Sep 2009 15:50:25 +0000 (16:50 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 5 Oct 2009 16:32:07 +0000 (09:32 -0700)
commit 4960aaca14010b9ff92e5726dd178cbd6805d412 upstream.

If we failed to set the domain, the buffer was no longer being tracked
on any list.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/gpu/drm/i915/i915_gem.c

index 81cc7ac745a7d2e530f6344b33704c897416088c..f19abbe624d14031525134131f4361f670ae1096 100644 (file)
@@ -1155,14 +1155,13 @@ int i915_gem_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
                        mutex_unlock(&dev->struct_mutex);
                        return VM_FAULT_SIGBUS;
                }
+               list_add_tail(&obj_priv->list, &dev_priv->mm.inactive_list);
 
                ret = i915_gem_object_set_to_gtt_domain(obj, write);
                if (ret) {
                        mutex_unlock(&dev->struct_mutex);
                        return VM_FAULT_SIGBUS;
                }
-
-               list_add_tail(&obj_priv->list, &dev_priv->mm.inactive_list);
        }
 
        /* Need a new fence register? */