Signed-off-by: Rafał Miłecki <[email protected]>
Reported-by: Jaime Velasco Juan <[email protected]>
---
This should make the trick, Jaime can you check if this works for you? Does it
kill your corruptions?
---
 drivers/gpu/drm/radeon/radeon_pm.c |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/radeon/radeon_pm.c 
b/drivers/gpu/drm/radeon/radeon_pm.c
index a8e151e..520197f 100644
--- a/drivers/gpu/drm/radeon/radeon_pm.c
+++ b/drivers/gpu/drm/radeon/radeon_pm.c
@@ -337,10 +337,15 @@ static void radeon_pm_set_clocks(struct radeon_device 
*rdev)
                rdev->pm.req_vblank |= (1 << 1);
                drm_vblank_get(rdev->ddev, 1);
        }
-       if (rdev->pm.active_crtcs)
-               wait_event_interruptible_timeout(
+       if (rdev->pm.active_crtcs) {
+               /* We call __wait_* directly because of double condition check
+                  which we do not use. This call is suppossed to sleep until
+                  a wake_up happens or a timeout elapses */
+               long timeout = msecs_to_jiffies(RADEON_WAIT_VBLANK_TIMEOUT);
+               __wait_event_interruptible_timeout(
                        rdev->irq.vblank_queue, 0,
-                       msecs_to_jiffies(RADEON_WAIT_VBLANK_TIMEOUT));
+                       timeout);
+       }
        if (rdev->pm.req_vblank & (1 << 0)) {
                rdev->pm.req_vblank &= ~(1 << 0);
                drm_vblank_put(rdev->ddev, 0);
-- 
1.6.4.2


------------------------------------------------------------------------------
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
--
_______________________________________________
Dri-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to