aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c16
1 files changed, 7 insertions, 9 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c
index e4eb6dd3798a..0335c2f331e9 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c
@@ -97,8 +97,7 @@ int amdgpu_gtt_mgr_alloc(struct ttm_mem_type_manager *man,
97{ 97{
98 struct amdgpu_gtt_mgr *mgr = man->priv; 98 struct amdgpu_gtt_mgr *mgr = man->priv;
99 struct drm_mm_node *node = mem->mm_node; 99 struct drm_mm_node *node = mem->mm_node;
100 enum drm_mm_search_flags sflags = DRM_MM_SEARCH_BEST; 100 enum drm_mm_insert_mode mode;
101 enum drm_mm_allocator_flags aflags = DRM_MM_CREATE_DEFAULT;
102 unsigned long fpfn, lpfn; 101 unsigned long fpfn, lpfn;
103 int r; 102 int r;
104 103
@@ -115,15 +114,14 @@ int amdgpu_gtt_mgr_alloc(struct ttm_mem_type_manager *man,
115 else 114 else
116 lpfn = man->size; 115 lpfn = man->size;
117 116
118 if (place && place->flags & TTM_PL_FLAG_TOPDOWN) { 117 mode = DRM_MM_INSERT_BEST;
119 sflags = DRM_MM_SEARCH_BELOW; 118 if (place && place->flags & TTM_PL_FLAG_TOPDOWN)
120 aflags = DRM_MM_CREATE_TOP; 119 mode = DRM_MM_INSERT_HIGH;
121 }
122 120
123 spin_lock(&mgr->lock); 121 spin_lock(&mgr->lock);
124 r = drm_mm_insert_node_in_range_generic(&mgr->mm, node, mem->num_pages, 122 r = drm_mm_insert_node_in_range(&mgr->mm, node,
125 mem->page_alignment, 0, 123 mem->num_pages, mem->page_alignment, 0,
126 fpfn, lpfn, sflags, aflags); 124 fpfn, lpfn, mode);
127 spin_unlock(&mgr->lock); 125 spin_unlock(&mgr->lock);
128 126
129 if (!r) { 127 if (!r) {