diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2012-03-28 02:52:32 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2012-03-28 08:50:05 -0400 |
commit | d936622c36273a9ecfbb4aacf26cd29405995159 (patch) | |
tree | f843bbce85385560288ace9402db14f772337044 | |
parent | 88f50c80748bf5238c88e70ee26c68ac48b94e68 (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.c | 12 |
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); |