Index: linux-2.6/drivers/gpu/drm/i915/i915_drv.c =================================================================== --- linux-2.6.orig/drivers/gpu/drm/i915/i915_drv.c 2011-07-16 08:23:14.000000000 +1000 +++ linux-2.6/drivers/gpu/drm/i915/i915_drv.c 2011-07-16 08:24:38.179903443 +1000 @@ -378,12 +378,13 @@ void gen6_gt_force_wake_put(struct drm_i void __gen6_gt_wait_for_fifo(struct drm_i915_private *dev_priv) { if (dev_priv->gt_fifo_count < GT_FIFO_NUM_RESERVED_ENTRIES ) { - int loop = 500; + int loop = 5000; u32 fifo = I915_READ_NOTRACE(GT_FIFO_FREE_ENTRIES); while (fifo <= GT_FIFO_NUM_RESERVED_ENTRIES && loop--) { udelay(10); fifo = I915_READ_NOTRACE(GT_FIFO_FREE_ENTRIES); } + WARN_ON(loop < 4500); WARN_ON(loop < 0 && fifo <= GT_FIFO_NUM_RESERVED_ENTRIES); dev_priv->gt_fifo_count = fifo; }