aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/drm_irq.c
diff options
context:
space:
mode:
authorMario Kleiner <mario.kleiner.de@gmail.com>2013-10-30 00:13:05 -0400
committerDave Airlie <airlied@redhat.com>2013-11-05 20:53:40 -0500
commit862cc8b4bba9381c1824a0b7ed6404ec2cfb21b1 (patch)
treeed295bdd9cf55bc644b81e3c7fe0dc70fcbab5be /drivers/gpu/drm/drm_irq.c
parentbbf1f8bfef7fbe1ea5634d7559770b805510ad8d (diff)
drm: Remove preempt_disable() from vblank timestamping code.
Preemption handling will get pushed into the kms drivers in followup patches, to make timestamping more robust and PREEMPT_RT friendly. Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/drm_irq.c')
-rw-r--r--drivers/gpu/drm/drm_irq.c7
1 files changed, 0 insertions, 7 deletions
diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c
index f9af048828ea..33ee515c9777 100644
--- a/drivers/gpu/drm/drm_irq.c
+++ b/drivers/gpu/drm/drm_irq.c
@@ -586,11 +586,6 @@ int drm_calc_vbltimestamp_from_scanoutpos(struct drm_device *dev, int crtc,
586 * code gets preempted or delayed for some reason. 586 * code gets preempted or delayed for some reason.
587 */ 587 */
588 for (i = 0; i < DRM_TIMESTAMP_MAXRETRIES; i++) { 588 for (i = 0; i < DRM_TIMESTAMP_MAXRETRIES; i++) {
589 /* Disable preemption to make it very likely to
590 * succeed in the first iteration even on PREEMPT_RT kernel.
591 */
592 preempt_disable();
593
594 /* Get system timestamp before query. */ 589 /* Get system timestamp before query. */
595 stime = ktime_get(); 590 stime = ktime_get();
596 591
@@ -602,8 +597,6 @@ int drm_calc_vbltimestamp_from_scanoutpos(struct drm_device *dev, int crtc,
602 if (!drm_timestamp_monotonic) 597 if (!drm_timestamp_monotonic)
603 mono_time_offset = ktime_get_monotonic_offset(); 598 mono_time_offset = ktime_get_monotonic_offset();
604 599
605 preempt_enable();
606
607 /* Return as no-op if scanout query unsupported or failed. */ 600 /* Return as no-op if scanout query unsupported or failed. */
608 if (!(vbl_status & DRM_SCANOUTPOS_VALID)) { 601 if (!(vbl_status & DRM_SCANOUTPOS_VALID)) {
609 DRM_DEBUG("crtc %d : scanoutpos query failed [%d].\n", 602 DRM_DEBUG("crtc %d : scanoutpos query failed [%d].\n",