[PATCH 4/4] drm/radeon: fix userptr return value checking

Christian König deathsimple at vodafone.de
Mon Apr 27 08:04:37 PDT 2015


From: Christian König <christian.koenig at amd.com>

Otherwise we print false warning from time to time.

Signed-off-by: Christian König <christian.koenig at amd.com>
Signed-off-by: Jack Xiao <Jack.Xiao at amd.com>
CC: stable at vger.kernel.org
---
 drivers/gpu/drm/radeon/radeon_mn.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/radeon/radeon_mn.c b/drivers/gpu/drm/radeon/radeon_mn.c
index 572b4db..30e6207 100644
--- a/drivers/gpu/drm/radeon/radeon_mn.c
+++ b/drivers/gpu/drm/radeon/radeon_mn.c
@@ -122,26 +122,26 @@ static void radeon_mn_invalidate_range_start(struct mmu_notifier *mn,
 	it = interval_tree_iter_first(&rmn->objects, start, end);
 	while (it) {
 		struct radeon_bo *bo;
-		int r;
+		long r;
 
 		bo = container_of(it, struct radeon_bo, mn_it);
 		it = interval_tree_iter_next(it, start, end);
 
 		r = radeon_bo_reserve(bo, true);
 		if (r) {
-			DRM_ERROR("(%d) failed to reserve user bo\n", r);
+			DRM_ERROR("(%ld) failed to reserve user bo\n", r);
 			continue;
 		}
 
 		r = reservation_object_wait_timeout_rcu(bo->tbo.resv, true,
 			false, MAX_SCHEDULE_TIMEOUT);
-		if (r)
-			DRM_ERROR("(%d) failed to wait for user bo\n", r);
+		if (r <= 0)
+			DRM_ERROR("(%ld) failed to wait for user bo\n", r);
 
 		radeon_ttm_placement_from_domain(bo, RADEON_GEM_DOMAIN_CPU);
 		r = ttm_bo_validate(&bo->tbo, &bo->placement, false, false);
 		if (r)
-			DRM_ERROR("(%d) failed to validate user bo\n", r);
+			DRM_ERROR("(%ld) failed to validate user bo\n", r);
 
 		radeon_bo_unreserve(bo);
 	}
-- 
1.9.1



More information about the dri-devel mailing list