Am 07.11.2017 um 03:48 schrieb Chunming Zhou:
Otherwise there could be page protection.
Change-Id: I1f6c81002fb2ba21c17cdc14fdde86579b28374e
Signed-off-by: Chunming Zhou <[email protected]>
---
drivers/gpu/drm/amd/scheduler/gpu_scheduler.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
index 310904042dfc..e38d55961a9f 100644
--- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
+++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
@@ -243,6 +243,12 @@ void amd_sched_entity_fini(struct amd_gpu_scheduler *sched,
amd_sched_fence_scheduled(s_fence);
kcl_dma_fence_set_error(&s_fence->finished, -ESRCH);
amd_sched_fence_finished(s_fence);
+ if (s_fence->parent) {
+ dma_fence_remove_callback(s_fence->parent,
+ &s_fence->cb);
+ dma_fence_put(s_fence->parent);
+ s_fence->parent = NULL;
+ }
Mhm, that looks unnecessary to me. The fences should have never been
scheduled to the hardware and so shouldn't have a parent fence set.
I would rather add a WARN_ON(s_fence->parent); here.
Regards,
Christian.
dma_fence_put(&s_fence->finished);
sched->ops->free_job(job);
}
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx