aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2009-12-09 00:32:23 -0500
committerDave Airlie <airlied@redhat.com>2009-12-10 00:09:04 -0500
commit2e7b6f7fa62d92d941c626f8ae45f5cd75a52d55 (patch)
treee8fe30c94c4cb51f0bdc3f30c43a58c437fb8391 /drivers
parent5cc6fbab9da5680e7e5d2507d0f0c2c52ff18031 (diff)
drm/radeon/kms: fix return value from fence function.
We only want to return here for errors, the wait functions return a positive timeout otherwise, which gets back to userspace and causes X to crash here. Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/radeon/radeon_fence.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_fence.c b/drivers/gpu/drm/radeon/radeon_fence.c
index 78743cd70433..cb4cd97ae39f 100644
--- a/drivers/gpu/drm/radeon/radeon_fence.c
+++ b/drivers/gpu/drm/radeon/radeon_fence.c
@@ -197,7 +197,7 @@ retry:
197 r = wait_event_interruptible_timeout(rdev->fence_drv.queue, 197 r = wait_event_interruptible_timeout(rdev->fence_drv.queue,
198 radeon_fence_signaled(fence), timeout); 198 radeon_fence_signaled(fence), timeout);
199 radeon_irq_kms_sw_irq_put(rdev); 199 radeon_irq_kms_sw_irq_put(rdev);
200 if (unlikely(r != 0)) 200 if (unlikely(r < 0))
201 return r; 201 return r;
202 } else { 202 } else {
203 radeon_irq_kms_sw_irq_get(rdev); 203 radeon_irq_kms_sw_irq_get(rdev);