From patchwork Thu Jul 21 06:57:37 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chris Wilson X-Patchwork-Id: 9240987 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id E739E602F0 for ; Thu, 21 Jul 2016 06:57:53 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D9E6227BFC for ; Thu, 21 Jul 2016 06:57:53 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id CE8CC27D85; Thu, 21 Jul 2016 06:57:53 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.1 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 7188927BFC for ; Thu, 21 Jul 2016 06:57:53 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 81FAB6E0E0; Thu, 21 Jul 2016 06:57:51 +0000 (UTC) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mail-wm0-x244.google.com (mail-wm0-x244.google.com [IPv6:2a00:1450:400c:c09::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6774F6E0E0 for ; Thu, 21 Jul 2016 06:57:48 +0000 (UTC) Received: by mail-wm0-x244.google.com with SMTP id o80so1370016wme.0 for ; Wed, 20 Jul 2016 23:57:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:date:message-id; bh=6jsG9EcOPm8MkBrsecID5UpZvI5MhC0dLmRMyvXrryo=; b=fdiZCcgkIa0D7nVCmf/eOKX80Y18k4yMDnGepbyITazPh3oJVLgziVsAfKtQmF0K52 kDOdZFOXLpWHDqPUrtjaf8U36VT1Grp1NGnWF28ja5POX1J8Tfw+w1HWZsKsJO7i2j2n MrHFpQGAlnmSrQifX7iwGG3OVmQGyH5HBqhZ7zhxOWbAoWWmsNaU9A13htvPekxH8nQT X3NCEaom8N0gEwyT3aJIzpMsTZ7T2XGWFj6X0WsculWQ4Jv2moN5mdnhyiglW6z0k8SV TTD2g8UcrrDM2an9vlAt0+i5QiNLwXAbJSya2J73Ufew5VNiGAFB3nmZKKQZ6CQoJAcA PDQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id; bh=6jsG9EcOPm8MkBrsecID5UpZvI5MhC0dLmRMyvXrryo=; b=XMYdYqie14Fzu84LOYjr8C8aNCEtmraWsAXM8ue+pseaEFwY/HBh+EGMlv9lVigLuV 6uLS3APQsq5Q0N7AgCrcnJPpizKg/cl9qJY0jeAdjWZDPEv57YErbypdtllOvkTrF7KT wU26XiAbkWDWPW/pIf8HoMjUBZ+JZzcN2nB0yoXcUfTmHuSP/cBnAbc7aYxbPrtFcU8o guN92X5tZ8QRm+eZi/W7oPqTMgpuqlWqr6uC8fzegFaTv/ecO3nMWdt1SFn75rSLnvPg zncpov93DeV9HyKihbwdIekJjL4oHgbTLCJe1aAh4Ra8vEpXYFQvgSsEFIqLqknuqx4F mkzw== X-Gm-Message-State: ALyK8tIULuOrVZY6NypsErc/mhaFW2HPVbAUZ4Jr4B1Wi5eZ1g/b1KfE6cWCjQ8bEmj87A== X-Received: by 10.28.134.203 with SMTP id i194mr15754096wmd.22.1469084265813; Wed, 20 Jul 2016 23:57:45 -0700 (PDT) Received: from haswell.alporthouse.com ([78.156.65.138]) by smtp.gmail.com with ESMTPSA id e4sm4817668wjy.20.2016.07.20.23.57.44 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 20 Jul 2016 23:57:44 -0700 (PDT) From: Chris Wilson To: intel-gfx@lists.freedesktop.org Date: Thu, 21 Jul 2016 07:57:37 +0100 Message-Id: <1469084259-23110-1-git-send-email-chris@chris-wilson.co.uk> X-Mailer: git-send-email 2.8.1 Subject: [Intel-gfx] [PATCH v2 1/3] drm/i915: Drop racy markup of missed-irqs from idle-worker X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" X-Virus-Scanned: ClamAV using ClamSMTP During the idle-worker we disable the hangcheck and so kick any waiters that should have been completed (since the GPU is now idle). Unlike the hangcheck, we do not take any care to avoid the race between the irq handler and ourselves, and so it is possible for us to declare a missed interrupt even as the bottom-half is being scheduled to run. Let's ignore this race to stop a potential false-positive error. References: https://bugs.freedesktop.org/show_bug.cgi?id=96974 Signed-off-by: Chris Wilson Cc: Joonas Lahtinen Cc: Tvrtko Ursulin Reviewed-by: Tvrtko Ursulin --- drivers/gpu/drm/i915/i915_gem.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index 40047eb48826..9e826585edb2 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c @@ -2706,10 +2706,9 @@ i915_gem_idle_work_handler(struct work_struct *work) rearm_hangcheck = false; stuck_engines = intel_kick_waiters(dev_priv); - if (unlikely(stuck_engines)) { - DRM_DEBUG_DRIVER("kicked stuck waiters...missed irq\n"); - dev_priv->gpu_error.missed_irq_rings |= stuck_engines; - } + if (unlikely(stuck_engines)) + DRM_DEBUG_DRIVER("kicked stuck waiters (%x)...missed irq?\n", + stuck_engines); if (INTEL_GEN(dev_priv) >= 6) gen6_rps_idle(dev_priv);