aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
diff options
context:
space:
mode:
authorChunming Zhou <david1.zhou@amd.com>2018-04-02 11:20:44 +0800
committerAlex Deucher <alexander.deucher@amd.com>2018-04-11 13:08:01 -0500
commit552825b28ddac200b6080d9e79f4121b68e1517d (patch)
treea274b24b9c9c11789520e585265eb939fe11d83b /drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
parentdrm/amdgpu: Don't change preferred domian when fallback GTT v6 (diff)
downloadlinux-dev-552825b28ddac200b6080d9e79f4121b68e1517d.tar.xz
linux-dev-552825b28ddac200b6080d9e79f4121b68e1517d.zip
drm/amdgpu: add new bo flag that indicates BOs don't need fallback (v2)
user cases: 1. KFD wraps amdgpu_bo_create, they have no fallback case which is different with amdgpu_gem_object_create. since upstream branch has no amdgpu_amdkfd_gpuvm.c, which need KFD guys add this flag to __alloc_memory_of_gpu: + flags |= AMDGPU_GEM_CREATE_NO_FALLBACK; 2. UMD can specify this flag for their allocation as well if they like. v2: squash in merge conflict fix (Chunming) Signed-off-by: Chunming Zhou <david1.zhou@amd.com> Acked-by: Felix Kuehling <Felix.Kuehling@amd.com> Cc: felix.kuehling@amd.com Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
index dc34b50e6b29..d7d7ce1507ec 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
@@ -386,7 +386,8 @@ retry:
bo->tbo.mem.start < adev->gmc.visible_vram_size >> PAGE_SHIFT)
p->bytes_moved_vis += ctx.bytes_moved;
- if (unlikely(r == -ENOMEM) && domain != bo->allowed_domains) {
+ if (unlikely(r == -ENOMEM) && domain != bo->allowed_domains &&
+ !(bo->flags & AMDGPU_GEM_CREATE_NO_FALLBACK)) {
domain = bo->allowed_domains;
goto retry;
}