diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 23 | 
1 files changed, 10 insertions, 13 deletions
| diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c index cb07cc3b06ed..d6aa032890ee 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c @@ -341,21 +341,18 @@ retry:  	r = amdgpu_gem_object_create(adev, size, args->in.alignment,  				     initial_domain,  				     flags, ttm_bo_type_device, resv, &gobj); -	if (r) { -		if (r != -ERESTARTSYS) { -			if (flags & AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED) { -				flags &= ~AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED; -				goto retry; -			} +	if (r && 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; -			} -			DRM_DEBUG("Failed to allocate GEM object (%llu, %d, %llu, %d)\n", -				  size, initial_domain, args->in.alignment, r); +		if (initial_domain == AMDGPU_GEM_DOMAIN_VRAM) { +			initial_domain |= AMDGPU_GEM_DOMAIN_GTT; +			goto retry;  		} -		return r; +		DRM_DEBUG("Failed to allocate GEM object (%llu, %d, %llu, %d)\n", +				size, initial_domain, args->in.alignment, r);  	}  	if (flags & AMDGPU_GEM_CREATE_VM_ALWAYS_VALID) { | 
