|
@@ -502,7 +502,7 @@ amd_sched_select_entity(struct amd_gpu_scheduler *sched)
|
|
return NULL;
|
|
return NULL;
|
|
|
|
|
|
/* Kernel run queue has higher priority than normal run queue*/
|
|
/* Kernel run queue has higher priority than normal run queue*/
|
|
- for (i = 0; i < AMD_SCHED_MAX_PRIORITY; i++) {
|
|
|
|
|
|
+ for (i = AMD_SCHED_PRIORITY_MAX - 1; i >= AMD_SCHED_PRIORITY_MIN; i--) {
|
|
entity = amd_sched_rq_select_entity(&sched->sched_rq[i]);
|
|
entity = amd_sched_rq_select_entity(&sched->sched_rq[i]);
|
|
if (entity)
|
|
if (entity)
|
|
break;
|
|
break;
|
|
@@ -610,7 +610,7 @@ int amd_sched_init(struct amd_gpu_scheduler *sched,
|
|
sched->hw_submission_limit = hw_submission;
|
|
sched->hw_submission_limit = hw_submission;
|
|
sched->name = name;
|
|
sched->name = name;
|
|
sched->timeout = timeout;
|
|
sched->timeout = timeout;
|
|
- for (i = 0; i < AMD_SCHED_MAX_PRIORITY; i++)
|
|
|
|
|
|
+ for (i = AMD_SCHED_PRIORITY_MIN; i < AMD_SCHED_PRIORITY_MAX; i++)
|
|
amd_sched_rq_init(&sched->sched_rq[i]);
|
|
amd_sched_rq_init(&sched->sched_rq[i]);
|
|
|
|
|
|
init_waitqueue_head(&sched->wake_up_worker);
|
|
init_waitqueue_head(&sched->wake_up_worker);
|