OpenCloudOS-Kernel/drivers/gpu/drm/scheduler
Bas Nieuwenhuizen 1decbf6bb0 drm/sched: Fix entities with 0 rqs.
Some blocks in amdgpu can have 0 rqs.

Job creation already fails with -ENOENT when entity->rq is NULL,
so jobs cannot be pushed. Without a rq there is no scheduler to
pop jobs, and rq selection already does the right thing with a
list of length 0.

So the operations we need to fix are:
  - Creation, do not set rq to rq_list[0] if the list can have length 0.
  - Do not flush any jobs when there is no rq.
  - On entity destruction handle the rq = NULL case.
  - on set_priority, do not try to change the rq if it is NULL.

Signed-off-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2019-02-15 11:15:08 -05:00
..
Makefile drm/scheduler: rename gpu_scheduler.c to sched_main.c 2018-08-27 11:10:44 -05:00
gpu_scheduler_trace.h drm/scheduler: Add job dependency trace. 2018-08-27 11:09:46 -05:00
sched_entity.c drm/sched: Fix entities with 0 rqs. 2019-02-15 11:15:08 -05:00
sched_fence.c drm/scheduler: change entities rq even earlier 2018-08-27 11:10:07 -05:00
sched_main.c drm/sched: Rework HW fence processing. 2019-01-25 16:15:36 -05:00