drm/radeon: use vram/gart pinned size in radeon_do_test_moves
Gives more accurate count and prevents failures when we can't allocate memory for the tests. Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
This commit is contained in:
parent
ccbe0060aa
commit
2c6316cbcd
|
@ -56,13 +56,7 @@ static void radeon_do_test_moves(struct radeon_device *rdev, int flag)
|
||||||
/* Number of tests =
|
/* Number of tests =
|
||||||
* (Total GTT - IB pool - writeback page - ring buffers) / test size
|
* (Total GTT - IB pool - writeback page - ring buffers) / test size
|
||||||
*/
|
*/
|
||||||
n = rdev->mc.gtt_size - RADEON_IB_POOL_SIZE*64*1024;
|
n = rdev->mc.gtt_size - rdev->gart_pin_size;
|
||||||
for (i = 0; i < RADEON_NUM_RINGS; ++i)
|
|
||||||
n -= rdev->ring[i].ring_size;
|
|
||||||
if (rdev->wb.wb_obj)
|
|
||||||
n -= RADEON_GPU_PAGE_SIZE;
|
|
||||||
if (rdev->ih.ring_obj)
|
|
||||||
n -= rdev->ih.ring_size;
|
|
||||||
n /= size;
|
n /= size;
|
||||||
|
|
||||||
gtt_obj = kzalloc(n * sizeof(*gtt_obj), GFP_KERNEL);
|
gtt_obj = kzalloc(n * sizeof(*gtt_obj), GFP_KERNEL);
|
||||||
|
|
Loading…
Reference in New Issue