From: Michel Dänzer michel.daenzer@amd.com
Without this, there could not be enough slots, which could trigger the BUG_ON in reservation_object_add_shared_fence.
v2: * Jump to the error label instead of returning directly (Jerry Zhang) v3: * Reserve slots for command submission after VM updates (Christian König)
Cc: stable@vger.kernel.org Bugzilla: https://bugs.freedesktop.org/106418 Reported-by: mikhail.v.gavrilov@gmail.com Signed-off-by: Michel Dänzer michel.daenzer@amd.com Signed-off-by: Junwei Zhang Jerry.Zhang@amd.com --- drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c index 7a625f3..1bc0281 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c @@ -928,6 +928,10 @@ static int amdgpu_cs_ib_vm_chunk(struct amdgpu_device *adev, r = amdgpu_bo_vm_update_pte(p); if (r) return r; + + r = reservation_object_reserve_shared(vm->root.base.bo->tbo.resv); + if (r) + return r; }
return amdgpu_cs_sync_rings(p);
Am 04.07.2018 um 05:02 schrieb Junwei Zhang:
From: Michel Dänzer michel.daenzer@amd.com
Without this, there could not be enough slots, which could trigger the BUG_ON in reservation_object_add_shared_fence.
v2:
- Jump to the error label instead of returning directly (Jerry Zhang)
v3:
- Reserve slots for command submission after VM updates (Christian König)
Cc: stable@vger.kernel.org Bugzilla: https://bugs.freedesktop.org/106418 Reported-by: mikhail.v.gavrilov@gmail.com Signed-off-by: Michel Dänzer michel.daenzer@amd.com Signed-off-by: Junwei Zhang Jerry.Zhang@amd.com
I would put that at the end of amdgpu_bo_vm_update_pte(), but that is only a minor nit pick.
Patch is Reviewed-by: Christian König christian.koenig@amd.com anyway.
Regards, Christian.
drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c index 7a625f3..1bc0281 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c @@ -928,6 +928,10 @@ static int amdgpu_cs_ib_vm_chunk(struct amdgpu_device *adev, r = amdgpu_bo_vm_update_pte(p); if (r) return r;
r = reservation_object_reserve_shared(vm->root.base.bo->tbo.resv);
if (r)
}return r;
return amdgpu_cs_sync_rings(p);
On 07/04/2018 02:34 PM, Christian König wrote:
Am 04.07.2018 um 05:02 schrieb Junwei Zhang:
From: Michel Dänzer michel.daenzer@amd.com
Without this, there could not be enough slots, which could trigger the BUG_ON in reservation_object_add_shared_fence.
v2:
- Jump to the error label instead of returning directly (Jerry Zhang)
v3:
- Reserve slots for command submission after VM updates (Christian König)
Cc: stable@vger.kernel.org Bugzilla: https://bugs.freedesktop.org/106418 Reported-by: mikhail.v.gavrilov@gmail.com Signed-off-by: Michel Dänzer michel.daenzer@amd.com Signed-off-by: Junwei Zhang Jerry.Zhang@amd.com
I would put that at the end of amdgpu_bo_vm_update_pte(), but that is only a minor nit pick.
At first, I really put it at the end of amdgpu_bo_vm_update_pte(). On the 2nd thought, that func may be called by others(although it's not for now), so I move it out of there to the caller.
Jerry
Patch is Reviewed-by: Christian König christian.koenig@amd.com anyway.
Regards, Christian.
drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c index 7a625f3..1bc0281 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c @@ -928,6 +928,10 @@ static int amdgpu_cs_ib_vm_chunk(struct amdgpu_device *adev, r = amdgpu_bo_vm_update_pte(p); if (r) return r;
r = reservation_object_reserve_shared(vm->root.base.bo->tbo.resv);
if (r)
return r; } return amdgpu_cs_sync_rings(p);
linux-stable-mirror@lists.linaro.org