Hi Eric, The frequent ~1.5s pauses I hit with SNB hardware in the gnome3 UI (eg whenever you hit the top-left of the screen to show all windows) are nicely addressed by your recent wake patch [1] (ported to -rc3). Thus I see no 'missed IRQ' kernel messages.
As this addresses a significant usability regression, are you happy to add it to the 3.0-rc queue? I think it has very good value in -stable also (assuming correctness). What do you think? Thanks, Daniel --- [1] http://lists.freedesktop.org/archives/intel-gfx/2011-June/010863.html diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c index 95c4b14..d3ef07f 100644 --- a/drivers/gpu/drm/i915/intel_ringbuffer.c +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c @@ -631,9 +631,11 @@ gen6_ring_get_irq(struct intel_ring_buffer *ring, u32 gflag, u32 rflag) spin_lock(&ring->irq_lock); if (ring->irq_refcount++ == 0) { + gen6_gt_force_wake_get(dev_priv); ring->irq_mask &= ~rflag; I915_WRITE_IMR(ring, ring->irq_mask); ironlake_enable_irq(dev_priv, gflag); + gen6_gt_force_wake_put(dev_priv); } spin_unlock(&ring->irq_lock); @@ -648,9 +650,11 @@ gen6_ring_put_irq(struct intel_ring_buffer *ring, u32 gflag, u32 rflag) spin_lock(&ring->irq_lock); if (--ring->irq_refcount == 0) { + gen6_gt_force_wake_get(dev_priv); ring->irq_mask |= rflag; I915_WRITE_IMR(ring, ring->irq_mask); ironlake_disable_irq(dev_priv, gflag); + gen6_gt_force_wake_put(dev_priv); } spin_unlock(&ring->irq_lock); } -- Daniel J Blueman _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx