drm/amd/amdgpu: if visible VRAM allocation fail, fall back to invisible try again
authorRoger He <Hongbo.He@amd.com>
Fri, 10 Nov 2017 12:00:30 +0000 (20:00 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 13 Nov 2017 19:37:44 +0000 (14:37 -0500)
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Roger He <Hongbo.He@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c

index 4710e51099c20dcb93464c554599df1d661615a1..951d625bbdd7d3e65dfa168e619c03c982bf130d 100644 (file)
@@ -63,6 +63,11 @@ retry:
                             flags, NULL, resv, 0, &bo);
        if (r) {
                if (r != -ERESTARTSYS) {
+                       if (flags & AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED) {
+                               flags &= ~AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED;
+                               goto retry;
+                       }
+
                        if (initial_domain == AMDGPU_GEM_DOMAIN_VRAM) {
                                initial_domain |= AMDGPU_GEM_DOMAIN_GTT;
                                goto retry;