OSDN Git Service

Fix 'sequence has passed' condition in i915_vblank_swap().
authorMichel Dänzer <michel@tungstengraphics.com>
Fri, 1 Sep 2006 09:24:38 +0000 (11:24 +0200)
committerMichel Dänzer <michel@tungstengraphics.com>
Fri, 29 Sep 2006 10:55:08 +0000 (12:55 +0200)
(cherry picked from 7f09f957d9a61ac107f8fd29128d7899a3e8a228 commit)

shared-core/i915_irq.c

index f82df5c..d88afdd 100644 (file)
@@ -474,7 +474,7 @@ int i915_vblank_swap(DRM_IOCTL_ARGS)
                swap.sequence += curseq;
                break;
        case _DRM_VBLANK_ABSOLUTE:
-               if ((curseq - swap.sequence) > (1<<23)) {
+               if ((curseq - swap.sequence) <= (1<<23)) {
                        spin_unlock_irqrestore(&dev_priv->swaps_lock, irqflags);
                        DRM_DEBUG("Missed target sequence\n");
                        return DRM_ERR(EINVAL);