drm/sched: Rework HW fence processing.
authorAndrey Grodzovsky <andrey.grodzovsky@amd.com>
Wed, 5 Dec 2018 19:21:28 +0000 (14:21 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 25 Jan 2019 21:15:36 +0000 (16:15 -0500)
commit3741540e04137256df82105bcd720a5e27423c34
treed2ce4f3e44efa27f84385859b812b8a74aba7c51
parent222b5f044159877504dbac9bc1910f89a74136e2
drm/sched: Rework HW fence processing.

Expedite job deletion from ring mirror list to the HW fence signal
callback instead from finish_work, together with waiting for all
such fences to signal in drm_sched_stop we garantee that
already signaled job will not be processed twice.
Remove the sched finish fence callback and just submit finish_work
directly from the HW fence callback.

v2: Fix comments.
v3: Attach  hw fence cb to sched_job
v5: Rebase

Suggested-by: Christian Koenig <Christian.Koenig@amd.com>
Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/scheduler/sched_main.c
include/drm/gpu_scheduler.h