[PATCH] drm/radeon: Only warn if the intra-domain offset actually exceeds the limit.
Michel Dänzer
michel at daenzer.net
Tue Mar 27 23:52:32 PDT 2012
From: Michel Dänzer <michel.daenzer at amd.com>
Fixes spurious warnings.
Tested-by: Dave Jones <davej at redhat.com>
Tested-by: Steven Rostedt <rostedt at goodmis.org>
Tested-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>
---
Thanks to Dave, Steven and Ben for testing the patch!
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 f441d58..ad9d450 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,
bo->pin_count++;
if (gpu_addr)
*gpu_addr = radeon_bo_gpu_offset(bo);
- WARN_ON_ONCE(max_offset != 0);
+
+ if (max_offset != 0) {
+ u64 domain_start;
+
+ if (domain == RADEON_GEM_DOMAIN_VRAM)
+ domain_start = bo->rdev->mc.vram_start;
+ else
+ domain_start = bo->rdev->mc.gtt_start;
+ WARN_ON_ONCE((*gpu_addr - domain_start) > max_offset);
+ }
+
return 0;
}
radeon_ttm_placement_from_domain(bo, domain);
--
1.7.9.1
More information about the dri-devel
mailing list