drm/amdgpu: always bind pinned BOs
We always need to bind pinned BOs, not just when the caller requested the address. Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
5e91fb57eb
commit
ead282a4f5
|
@ -688,16 +688,16 @@ int amdgpu_bo_pin_restricted(struct amdgpu_bo *bo, u32 domain,
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
|
|
||||||
bo->pin_count = 1;
|
r = amdgpu_ttm_bind(&bo->tbo, &bo->tbo.mem);
|
||||||
if (gpu_addr != NULL) {
|
if (unlikely(r)) {
|
||||||
r = amdgpu_ttm_bind(&bo->tbo, &bo->tbo.mem);
|
dev_err(adev->dev, "%p bind failed\n", bo);
|
||||||
if (unlikely(r)) {
|
goto error;
|
||||||
dev_err(adev->dev, "%p bind failed\n", bo);
|
|
||||||
goto error;
|
|
||||||
}
|
|
||||||
*gpu_addr = amdgpu_bo_gpu_offset(bo);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bo->pin_count = 1;
|
||||||
|
if (gpu_addr != NULL)
|
||||||
|
*gpu_addr = amdgpu_bo_gpu_offset(bo);
|
||||||
|
|
||||||
domain = amdgpu_mem_type_to_domain(bo->tbo.mem.mem_type);
|
domain = amdgpu_mem_type_to_domain(bo->tbo.mem.mem_type);
|
||||||
if (domain == AMDGPU_GEM_DOMAIN_VRAM) {
|
if (domain == AMDGPU_GEM_DOMAIN_VRAM) {
|
||||||
adev->vram_pin_size += amdgpu_bo_size(bo);
|
adev->vram_pin_size += amdgpu_bo_size(bo);
|
||||||
|
|
Loading…
Reference in New Issue