drm/i915: Simplify i915_gem_obj_is_pinned() test for set-tiling
authorChris Wilson <chris@chris-wilson.co.uk>
Wed, 15 Apr 2015 15:39:59 +0000 (16:39 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 16 Apr 2015 09:20:29 +0000 (11:20 +0200)
Since the removal of the user pin_ioctl, the only means for pinning an
object is either through binding to the scanout or during execbuf
reservation. As the later prevents a call to set-tiling, we need only
check if the obj is pinned into the display plane to see if we need
reject the set-tiling ioctl.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_gem_tiling.c

index 6377b22269ad1e7157058baf1447cb548362306c..633bd1fcab6925881048e7310f9aa40e4f9db868 100644 (file)
@@ -336,7 +336,7 @@ i915_gem_set_tiling(struct drm_device *dev, void *data,
        }
 
        mutex_lock(&dev->struct_mutex);
-       if (i915_gem_obj_is_pinned(obj) || obj->framebuffer_references) {
+       if (obj->pin_display || obj->framebuffer_references) {
                ret = -EBUSY;
                goto err;
        }