[Bug 93467] [bsw] execlists causes machine lockups

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Tue Mar 8 12:36:11 UTC 2016


https://bugs.freedesktop.org/show_bug.cgi?id=93467

--- Comment #9 from Chris Wilson <chris at chris-wilson.co.uk> ---
commit 3a7325e4989352c7a3150628e0f941573dffbf62
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Tue Mar 8 11:43:31 2016 +0000

    igt/gem_exec_nop: Add a basic test

    Demonstrate how trivial it is to lockup Braswell, at least my N3050 nuc,
    by saturating the interrupt handler with a few requests.

    References: https://bugs.freedesktop.org/show_bug.cgi?id=93467
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

adds a basic test that reliably reproduces the issue on my Braswell. A simpler
fix is

diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 53e5104..30d8bb7 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -1829,7 +1829,7 @@ static irqreturn_t cherryview_irq_handler(int irq, void
*arg)
        /* IRQs are synced during runtime_suspend, we don't require a wakeref
*/
        disable_rpm_wakeref_asserts(dev_priv);

-       for (;;) {
+       do {
                master_ctl = I915_READ(GEN8_MASTER_IRQ) &
~GEN8_MASTER_IRQ_CONTROL;
                iir = I915_READ(VLV_IIR);

@@ -1857,7 +1857,7 @@ static irqreturn_t cherryview_irq_handler(int irq, void
*arg)

                I915_WRITE(GEN8_MASTER_IRQ, DE_MASTER_IRQ_CONTROL);
                POSTING_READ(GEN8_MASTER_IRQ);
-       }
+       } while (0);

        enable_rpm_wakeref_asserts(dev_priv);

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20160308/3c9a1f1f/attachment.html>


More information about the intel-gfx-bugs mailing list