Explorar el Código

drm/radeon/r600: use fence->timeout directly

Fixes fence timeouts on r6xx/r7xx.  Noticed by
taiu on IRC.

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Alex Deucher hace 15 años
padre
commit
cecc6b63a5
Se han modificado 1 ficheros con 1 adiciones y 10 borrados
  1. 1 10
      drivers/gpu/drm/radeon/radeon_fence.c

+ 1 - 10
drivers/gpu/drm/radeon/radeon_fence.c

@@ -171,17 +171,8 @@ bool radeon_fence_signaled(struct radeon_fence *fence)
 int r600_fence_wait(struct radeon_fence *fence,  bool intr, bool lazy)
 {
 	struct radeon_device *rdev;
-	unsigned long cur_jiffies;
-	unsigned long timeout;
 	int ret = 0;
 
-	cur_jiffies = jiffies;
-	timeout = HZ / 100;
-
-	if (time_after(fence->timeout, cur_jiffies)) {
-		timeout = fence->timeout - cur_jiffies;
-	}
-
 	rdev = fence->rdev;
 
 	__set_current_state(intr ? TASK_INTERRUPTIBLE : TASK_UNINTERRUPTIBLE);
@@ -190,7 +181,7 @@ int r600_fence_wait(struct radeon_fence *fence,  bool intr, bool lazy)
 		if (radeon_fence_signaled(fence))
 			break;
 
-		if (time_after_eq(jiffies, timeout)) {
+		if (time_after_eq(jiffies, fence->timeout)) {
 			ret = -EBUSY;
 			break;
 		}