summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
diff options
context:
space:
mode:
authorChunming Zhou2015-08-05 13:07:08 +0200
committerAlex Deucher2015-08-17 22:51:02 +0200
commit80de5913cf31c86d64547af0715de4822c9b1abe (patch)
tree4c46bff9a98907bdeaa9fb1d48a6b7f9b19f5b6b /drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
parentdrm/amdgpu: cleanup amdgpu_ctx inti/fini v2 (diff)
downloadkernel-qcow2-linux-80de5913cf31c86d64547af0715de4822c9b1abe.tar.gz
kernel-qcow2-linux-80de5913cf31c86d64547af0715de4822c9b1abe.tar.xz
kernel-qcow2-linux-80de5913cf31c86d64547af0715de4822c9b1abe.zip
Revert "drm/amdgpu: return new seq_no for amd_sched_push_job"
This reverts commit d1d33da8eb86b8ca41dd9ed95738030df5267b95. Reviewed-by: Christian K?nig <christian.koenig@amd.com> Conflicts: drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
Diffstat (limited to 'drivers/gpu/drm/amd/scheduler/gpu_scheduler.c')
-rw-r--r--drivers/gpu/drm/amd/scheduler/gpu_scheduler.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
index b9aa572980d2..1204b7386b39 100644
--- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
+++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
@@ -289,9 +289,12 @@ int amd_context_entity_fini(struct amd_gpu_scheduler *sched,
* @sched The pointer to the scheduler
* @c_entity The pointer to amd_context_entity
* @job The pointer to job required to submit
- * return the virtual sequence number
+ * return 0 if succeed. -1 if failed.
+ * -2 indicate queue is full for this client, client should wait untill
+ * scheduler consum some queued command.
+ * -1 other fail.
*/
-uint64_t amd_sched_push_job(struct amd_gpu_scheduler *sched,
+int amd_sched_push_job(struct amd_gpu_scheduler *sched,
struct amd_context_entity *c_entity,
void *job)
{
@@ -305,8 +308,7 @@ uint64_t amd_sched_push_job(struct amd_gpu_scheduler *sched,
}
wake_up_interruptible(&sched->wait_queue);
-
- return atomic64_inc_return(&c_entity->last_queued_v_seq);
+ return 0;
}
/**