From patchwork Tue Jul 19 23:26:43 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Keith Packard X-Patchwork-Id: 989892 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by demeter1.kernel.org (8.14.4/8.14.4) with ESMTP id p6JNRFt8010221 for ; Tue, 19 Jul 2011 23:27:36 GMT Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 9B2F29F0E8 for ; Tue, 19 Jul 2011 16:27:14 -0700 (PDT) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from keithp.com (home.keithp.com [63.227.221.253]) by gabe.freedesktop.org (Postfix) with ESMTP id D6A459E974 for ; Tue, 19 Jul 2011 16:26:55 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by keithp.com (Postfix) with ESMTP id 80654C74016 for ; Tue, 19 Jul 2011 16:26:55 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at keithp.com Received: from keithp.com ([127.0.0.1]) by localhost (keithp.com [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 0sdhIMGETVJf; Tue, 19 Jul 2011 16:26:50 -0700 (PDT) Received: by keithp.com (Postfix, from userid 1033) id E8002C74015; Tue, 19 Jul 2011 16:26:49 -0700 (PDT) Received: from koto.keithp.com (localhost [127.0.0.1]) by keithp.com (Postfix) with ESMTP id D55D576018C; Tue, 19 Jul 2011 16:26:49 -0700 (PDT) Received: by koto.keithp.com (Postfix, from userid 1488) id 7E3CB64246D; Tue, 19 Jul 2011 16:26:49 -0700 (PDT) From: Keith Packard To: intel-gfx@lists.freedesktop.org Date: Tue, 19 Jul 2011 16:26:43 -0700 Message-Id: <1311118003-3443-1-git-send-email-keithp@keithp.com> X-Mailer: git-send-email 1.7.5.4 Subject: [Intel-gfx] [PATCH] drm/i915: Skip GPU wait for scanout pin while wedged X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: intel-gfx-bounces+patchwork-intel-gfx=patchwork.kernel.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+patchwork-intel-gfx=patchwork.kernel.org@lists.freedesktop.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter1.kernel.org [140.211.167.41]); Tue, 19 Jul 2011 23:27:36 +0000 (UTC) Failing to pin a scanout buffer will most likely lead to a black screen, so if the GPU is wedged, then just let the pin happen and hope that things work out OK. Signed-off-by: Keith Packard --- drivers/gpu/drm/i915/i915_gem.c | 12 +++++++++--- 1 files changed, 9 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index e9d1d5c..d8d623e 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c @@ -3112,9 +3112,15 @@ i915_gem_object_pin_to_display_plane(struct drm_i915_gem_object *obj, return ret; if (pipelined != obj->ring) { - ret = i915_gem_object_wait_rendering(obj); - if (ret) - return ret; + struct drm_device *dev = obj->base.dev; + drm_i915_private_t *dev_priv = dev->dev_private; + if (atomic_read(&dev_priv->mm.wedged)) { + DRM_ERROR("Skip GPU wait for scanout while wedged\n"); + } else { + ret = i915_gem_object_wait_rendering(obj); + if (ret) + return ret; + } } /* The display engine is not coherent with the LLC cache on gen6. As