[PATCH] drm/amdgpu: fix VM handling for GART allocations

Das, Nirmoy nirmoy.das at amd.com
Mon Jun 7 08:59:17 UTC 2021


Reviewed-by: Nirmoy Das <nirmoy.das at amd.com>

On 6/5/2021 4:51 PM, Christian König wrote:
> For GTT allocations with a GART address the res contains the VMID0
> addresses and can't be used for VM handling.
>
> So ignore the res when the pages array is given or we fill the page
> tables with nonsense.
>
> Signed-off-by: Christian König <christian.koenig at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> index c29fad97b63a..433642b3e498 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> @@ -1705,8 +1705,8 @@ int amdgpu_vm_bo_update_mapping(struct amdgpu_device *adev,
>   	if (r)
>   		goto error_unlock;
>   
> -	amdgpu_res_first(res, offset, (last - start + 1) * AMDGPU_GPU_PAGE_SIZE,
> -			 &cursor);
> +	amdgpu_res_first(pages_addr ? NULL : res, offset,
> +			 (last - start + 1) * AMDGPU_GPU_PAGE_SIZE, &cursor);
>   	while (cursor.remaining) {
>   		uint64_t tmp, num_entries, addr;
>   


More information about the amd-gfx mailing list