diff options
author | Michel Dänzer <michel@tungstengraphics.com> | 2006-09-29 10:27:29 +0200 |
---|---|---|
committer | Michel Dänzer <michel@tungstengraphics.com> | 2006-09-29 10:27:29 +0200 |
commit | 7af93dd9849442270ec89cb4bbeef5bfd4f9e424 (patch) | |
tree | 72cec3ac4a9cc84e8a850cff104705da940e6e4d /shared-core/i915_irq.c | |
parent | 881ba569929ceafd42e3c86228b0172099083d1d (diff) |
i915: Only schedule vblank tasklet if there are scheduled swaps pending.
This fixes issues on X server startup with versions of xf86-video-intel that
enable the IRQ before they have a context ID.
Diffstat (limited to 'shared-core/i915_irq.c')
-rw-r--r-- | shared-core/i915_irq.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/shared-core/i915_irq.c b/shared-core/i915_irq.c index fbc66749..76c3a810 100644 --- a/shared-core/i915_irq.c +++ b/shared-core/i915_irq.c @@ -171,7 +171,8 @@ irqreturn_t i915_driver_irq_handler(DRM_IRQ_ARGS) DRM_WAKEUP(&dev->vbl_queue); drm_vbl_send_signals(dev); - drm_locked_tasklet(dev, i915_vblank_tasklet); + if (dev_priv->swaps_pending > 0) + drm_locked_tasklet(dev, i915_vblank_tasklet); } return IRQ_HANDLED; |