drm/amdgpu: set the contiguous flag if possible
authorChristian König <christian.koenig@amd.com>
Tue, 27 Apr 2021 09:17:59 +0000 (11:17 +0200)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 20 May 2021 02:32:14 +0000 (22:32 -0400)
This avoids reallocating scanout BOs on first pin in a lot of cases.

Signed-off-by: Christian König <christian.koenig@amd.com>
Acked-by: Felix Kuehling <Felix.Kuehling@amd.com>
Tested-by: Nirmoy Das <nirmoy.das@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c

index e2cbe19..87c40c4 100644 (file)
@@ -446,10 +446,11 @@ static int amdgpu_vram_mgr_new(struct ttm_resource_manager *man,
        }
        spin_unlock(&mgr->lock);
 
-       atomic64_add(vis_usage, &mgr->vis_usage);
+       if (i == 1)
+               mem->placement |= TTM_PL_FLAG_CONTIGUOUS;
 
+       atomic64_add(vis_usage, &mgr->vis_usage);
        mem->mm_node = nodes;
-
        return 0;
 
 error: