projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
1daee8b
)
drm/amd/scheduler: fix page protection of cb
author
Chunming Zhou
<
[email protected]
>
Tue, 7 Nov 2017 02:40:00 +0000
(10:40 +0800)
committer
Alex Deucher
<
[email protected]
>
Wed, 6 Dec 2017 17:47:18 +0000
(12:47 -0500)
We must remove the fence callback.
Signed-off-by: Chunming Zhou <
[email protected]
>
Reviewed-by: Christian König <
[email protected]
>
Signed-off-by: Alex Deucher <
[email protected]
>
drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
patch
|
blob
|
history
diff --git
a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
index 53ea7e12d219dbed6652d960dda1b0cf8d03a2a7..9e3748a5b398f6917e2abd7b4570917577bddcae 100644
(file)
--- a/
drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
+++ b/
drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
@@
-229,6
+229,13
@@
void amd_sched_entity_fini(struct amd_gpu_scheduler *sched,
*/
kthread_park(sched->thread);
kthread_unpark(sched->thread);
+ if (entity->dependency) {
+ dma_fence_remove_callback(entity->dependency,
+ &entity->cb);
+ dma_fence_put(entity->dependency);
+ entity->dependency = NULL;
+ }
+
while ((job = to_amd_sched_job(spsc_queue_pop(&entity->job_queue)))) {
struct amd_sched_fence *s_fence = job->s_fence;
amd_sched_fence_scheduled(s_fence);