Chunming Zhou
754ce0fa55
drm/amd: add parent for sched fence
...
Parent of sched fence is hw fence which is to signal sched fence.
Signed-off-by: Chunming Zhou <David1.Zhou@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2016-07-07 15:06:13 -04:00
Christian König
6fc1367582
drm/amdgpu: generalize the scheduler fence
...
Make it two events, one for the job being scheduled and one when it is finished.
Acked-by: Alex Deucher <alexander.deucher@amd.com >
Signed-off-by: Christian König <christian.koenig@amd.com >
Acked-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2016-07-07 14:51:20 -04:00
Christian König
7392c329ee
drm/amdgpu: remove begin_job/finish_job
...
Completely pointless and confusing to use a callback
to call into the same code file.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Monk.Liu <monk.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2016-07-07 14:50:50 -04:00
Christian König
16a7133f35
drm/amdgpu: fix coding style in the scheduler v2
...
v2: fix even more
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Monk.Liu <monk.liu@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2016-07-07 14:50:50 -04:00
Monk Liu
0de2479c95
drm/amdgpu: rework TDR in scheduler (v2)
...
Add two callbacks to scheduler to maintain jobs, and invoked for
job timeout calculations. Now TDR measures time gap from
job is processed by hw.
v2:
fix typo
Signed-off-by: Monk Liu <Monk.Liu@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2016-05-02 15:19:57 -04:00
Monk Liu
4835096b07
drm/amdgpu: put job to list before done
...
the mirror_list will be used for later time out detect
feature. This is needed to properly detect a GPU
timeout with the scheduler.
Signed-off-by: Monk Liu <Monk.Liu@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2016-05-02 15:17:53 -04:00
Christian König
189e0fb763
drm/amdgpu: RCU protected amd_sched_fence_release
...
Fences must be freed RCU protected, otherwise the reservation_object_*_rcu()
functions can run into problems.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com >
2016-03-16 17:59:01 -04:00
Christian König
393a0bd437
drm/amdgpu: optimize scheduler fence handling
...
We only need to wait for jobs to be scheduled when
the dependency is from the same scheduler.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
2015-11-23 12:19:58 -05:00
Chunming Zhou
f5617f9dde
drm/amd: add kmem cache for sched fence
...
Change-Id: I45bb8ff10ef05dc3b15e31a77fbcf31117705f11
Signed-off-by: Chunming Zhou <David1.Zhou@amd.com >
Reviewed-by: Christian König <christian.koenig@amd.com >
2015-11-16 11:05:51 -05:00
Christian König
9b398fa5c2
drm/amdgpu: rename fence->scheduler to sched v2
...
Just to be consistent with the other members.
v2: rename the ring member as well.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com > (v1)
Reviewed-by: Chunming Zhou<david1.zhou@amd.com >
2015-09-23 17:23:37 -04:00
Christian König
0f75aee751
drm/amdgpu: cleanup entity init
...
Reorder the fields and properly return the kfifo_alloc error code.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com >
Reviewed-by: Chunming Zhou<david1.zhou@amd.com >
2015-09-23 17:23:37 -04:00
Chunming Zhou
84f76ea6b0
drm/amdgpu: add owner for sched fence
...
Signed-off-by: Chunming Zhou <david1.zhou@amd.com >
Reviewed-by: Christian K?nig <christian.koenig@amd.com >
2015-08-25 10:51:32 -04:00
Christian König
c14692f0a7
drm/amdgpu: remove entity reference from sched fence
...
Entity don't live as long as scheduler fences.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
2015-08-25 10:50:42 -04:00
Christian König
ce882e6dc2
drm/amdgpu: remove v_seq handling from the scheduler v2
...
Simply not used any more. Only keep 32bit atomic for fence sequence numbering.
v2: trivial rebase
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Alex Deucher <alexander.deucher@amd.com > (v1)
Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com > (v1)
Reviewed-by: Chunming Zhou <david1.zhou@amd.com > (v1)
2015-08-25 10:39:16 -04:00
Christian König
5b232c2a71
drm/amdgpu: remove scheduler fence list v2
...
Unused and missing proper locking.
v2: add locking comment to commit message.
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com > (v1)
2015-08-17 16:51:16 -04:00
Christian König
2983e5cef3
drm/amdgpu: remove unecessary scheduler fence callbacks
...
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
2015-08-17 16:51:14 -04:00
Christian König
db789d3451
drm/amdgpu: fix scheduler fence implementation
...
Signed-off-by: Christian König <christian.koenig@amd.com >
Reviewed-by: Chunming Zhou <david1.zhou@amd.com >
2015-08-17 16:51:14 -04:00
Chunming Zhou
f556cb0cae
drm/amd: add scheduler fence implementation (v2)
...
scheduler fence is based on kernel fence framework.
v2: squash in Christian's build fix
Signed-off-by: Chunming Zhou <david1.zhou@amd.com >
Reviewed-by: Christian K?nig <christian.koenig@amd.com >
2015-08-17 16:51:07 -04:00