This patch skips the loop in the irq handler in non-MSI mode, with the thought that we never had IRQ floods before it was added. I've tested for 'a while' on my GM965 and haven't seen any problems, but I hadn't run the looping code before.
If you're getting IRQs disabled, please give this a try and report back. From 29165ca636b4703046f1290c489885f1f3c41420 Mon Sep 17 00:00:00 2001 From: Keith Packard <[EMAIL PROTECTED]> Date: Mon, 17 Nov 2008 21:32:29 -0800 Subject: [PATCH] [drm/i915] Don't loop in i915 irq_handler in non-MSI mode Fixing MSI interrupts required looping in the IRQ handler until IIR went to zero (otherwise we'd lose interrupts). This isn't required in non-MSI mode as the IRQ will be re-raised on exit, and if we try this, it appears to make some machines generate an endless stream of interrupt requests while IIR is zero. The kernel eventually disables the interrupt and things stop working. Signed-off-by: Keith Packard <[EMAIL PROTECTED]> --- drivers/gpu/drm/i915/i915_irq.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c index 654d42f..b7e1a04 100644 --- a/drivers/gpu/drm/i915/i915_irq.c +++ b/drivers/gpu/drm/i915/i915_irq.c @@ -244,7 +244,7 @@ irqreturn_t i915_driver_irq_handler(DRM_IRQ_ARGS) * stray interrupts. */ iir = new_iir; - } while (iir != 0); + } while (iir != 0 && dev->pdev->msi_enabled); return IRQ_HANDLED; } -- 1.5.6.5 -- [EMAIL PROTECTED]
signature.asc
Description: This is a digitally signed message part
------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/
-- _______________________________________________ Dri-devel mailing list Dri-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dri-devel