[PATCH 1/1] drm/amdgpu: Fix IB allocation sizes for page table updates
Christian König
deathsimple at vodafone.de
Thu Aug 31 07:06:37 UTC 2017
Am 30.08.2017 um 23:08 schrieb Felix Kuehling:
> set_pte_pde commands need 10 dwords.
But is only used when we write more than 3 consecutive entries, before
that we use write_pte which uses only 6 dw.
See amdgpu_vm_do_set_ptes() in amdgpu_vm.c
Regards,
Christian.
>
> Signed-off-by: Felix Kuehling <Felix.Kuehling 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 4cdfb70..587a166 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
> @@ -1037,7 +1037,7 @@ static int amdgpu_vm_update_level(struct amdgpu_device *adev,
> ndw = 64;
>
> /* assume the worst case */
> - ndw += parent->last_entry_used * 6;
> + ndw += parent->last_entry_used * 10;
>
> pd_addr = amdgpu_bo_gpu_offset(parent->base.bo);
>
> @@ -1545,7 +1545,7 @@ static int amdgpu_vm_bo_update_mapping(struct amdgpu_device *adev,
> ndw = 64;
>
> /* one PDE write for each huge page */
> - ndw += ((nptes >> adev->vm_manager.block_size) + 1) * 6;
> + ndw += ((nptes >> adev->vm_manager.block_size) + 1) * 10;
>
> if (src) {
> /* only copy commands needed */
More information about the amd-gfx
mailing list