mirror of
https://gitlab.freedesktop.org/mesa/drm.git
synced 2026-05-06 08:18:05 +02:00
i915: Report back to userspace when a scheduled flip missed target.
This commit is contained in:
parent
6a9ff1e6c2
commit
733de3bc01
1 changed files with 5 additions and 4 deletions
|
|
@ -652,7 +652,7 @@ int i915_vblank_swap(DRM_IOCTL_ARGS)
|
|||
|
||||
spin_unlock_irqrestore(&dev->drw_lock, irqflags);
|
||||
|
||||
return 0;
|
||||
goto out;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -692,9 +692,6 @@ int i915_vblank_swap(DRM_IOCTL_ARGS)
|
|||
vbl_swap->sequence = swap.sequence;
|
||||
vbl_swap->flip = (swap.seqtype & _DRM_VBLANK_FLIP);
|
||||
|
||||
if (vbl_swap->flip)
|
||||
swap.sequence++;
|
||||
|
||||
spin_lock_irqsave(&dev_priv->swaps_lock, irqflags);
|
||||
|
||||
list_add_tail((struct list_head *)vbl_swap, &dev_priv->vbl_swaps.head);
|
||||
|
|
@ -702,6 +699,10 @@ int i915_vblank_swap(DRM_IOCTL_ARGS)
|
|||
|
||||
spin_unlock_irqrestore(&dev_priv->swaps_lock, irqflags);
|
||||
|
||||
out:
|
||||
if (swap.seqtype & _DRM_VBLANK_FLIP)
|
||||
swap.sequence++;
|
||||
|
||||
DRM_COPY_TO_USER_IOCTL((drm_i915_vblank_swap_t __user *) data, swap,
|
||||
sizeof(swap));
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue