aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichel Dänzer <michel.daenzer@amd.com>2012-03-28 02:52:32 -0400
committerDave Airlie <airlied@redhat.com>2012-03-28 08:50:05 -0400
commitd936622c36273a9ecfbb4aacf26cd29405995159 (patch)
treef843bbce85385560288ace9402db14f772337044
parent88f50c80748bf5238c88e70ee26c68ac48b94e68 (diff)
drm/radeon: Only warn if the intra-domain offset actually exceeds the limit.
Fixes spurious warnings. Tested-by: Dave Jones <davej@redhat.com> Tested-by: Steven Rostedt <rostedt@goodmis.org> Tested-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r--drivers/gpu/drm/radeon/radeon_object.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_object.c b/drivers/gpu/drm/radeon/radeon_object.c
index 91541e63d582..6f70158d34e4 100644
--- a/drivers/gpu/drm/radeon/radeon_object.c
+++ b/drivers/gpu/drm/radeon/radeon_object.c
@@ -233,7 +233,17 @@ int radeon_bo_pin_restricted(struct radeon_bo *bo, u32 domain, u64 max_offset,
233 bo->pin_count++; 233 bo->pin_count++;
234 if (gpu_addr) 234 if (gpu_addr)
235 *gpu_addr = radeon_bo_gpu_offset(bo); 235 *gpu_addr = radeon_bo_gpu_offset(bo);
236 WARN_ON_ONCE(max_offset != 0); 236
237 if (max_offset != 0) {
238 u64 domain_start;
239
240 if (domain == RADEON_GEM_DOMAIN_VRAM)
241 domain_start = bo->rdev->mc.vram_start;
242 else
243 domain_start = bo->rdev->mc.gtt_start;
244 WARN_ON_ONCE((*gpu_addr - domain_start) > max_offset);
245 }
246
237 return 0; 247 return 0;
238 } 248 }
239 radeon_ttm_placement_from_domain(bo, domain); 249 radeon_ttm_placement_from_domain(bo, domain);