drm/i915: Permit pinning whilst the device is 'suspended'
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 4 Jan 2010 18:57:57 +0000 (18:57 +0000)
committerEric Anholt <eric@anholt.net>
Wed, 6 Jan 2010 17:40:11 +0000 (09:40 -0800)
As pinning (allocating and binding GTT memory) does not actually invoke
GPU commands, it is safe, and indeed is attempted, during resumption
from suspension:

  [drm:intel_init_clock_gating] *ERROR* failed to pin power context: -16

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reported-by: Hugh Dickins <hugh.dickins@tiscali.co.uk>
Cc: stable@kernel.org
Signed-off-by: Eric Anholt <eric@anholt.net>
drivers/gpu/drm/i915/i915_gem.c

index 0330c3aa8032dba92b8564708caa7f7c3771ef28..21950ef987c78c51a9df7b5f459e152ff1a51893 100644 (file)
@@ -2582,9 +2582,6 @@ i915_gem_object_bind_to_gtt(struct drm_gem_object *obj, unsigned alignment)
        bool retry_alloc = false;
        int ret;
 
-       if (dev_priv->mm.suspended)
-               return -EBUSY;
-
        if (obj_priv->madv != I915_MADV_WILLNEED) {
                DRM_ERROR("Attempting to bind a purgeable object\n");
                return -EINVAL;