diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/channel_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/channel_gk20a.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c index f5ba9e50..77d9dc60 100644 --- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c | |||
@@ -243,8 +243,9 @@ void gk20a_channel_abort_clean_up(struct channel_gk20a *ch) | |||
243 | tmp_get = (tmp_get + 1) % ch->joblist.pre_alloc.length; | 243 | tmp_get = (tmp_get + 1) % ch->joblist.pre_alloc.length; |
244 | } | 244 | } |
245 | } else { | 245 | } else { |
246 | list_for_each_entry_safe(job, n, | 246 | nvgpu_list_for_each_entry_safe(job, n, |
247 | &ch->joblist.dynamic.jobs, list) { | 247 | &ch->joblist.dynamic.jobs, |
248 | channel_gk20a_job, list) { | ||
248 | if (job->post_fence->semaphore) { | 249 | if (job->post_fence->semaphore) { |
249 | __nvgpu_semaphore_release( | 250 | __nvgpu_semaphore_release( |
250 | job->post_fence->semaphore, true); | 251 | job->post_fence->semaphore, true); |
@@ -1079,9 +1080,9 @@ static struct channel_gk20a_job *channel_gk20a_joblist_peek( | |||
1079 | job = &c->joblist.pre_alloc.jobs[get]; | 1080 | job = &c->joblist.pre_alloc.jobs[get]; |
1080 | } | 1081 | } |
1081 | } else { | 1082 | } else { |
1082 | if (!list_empty(&c->joblist.dynamic.jobs)) | 1083 | if (!nvgpu_list_empty(&c->joblist.dynamic.jobs)) |
1083 | job = list_first_entry(&c->joblist.dynamic.jobs, | 1084 | job = nvgpu_list_first_entry(&c->joblist.dynamic.jobs, |
1084 | struct channel_gk20a_job, list); | 1085 | channel_gk20a_job, list); |
1085 | } | 1086 | } |
1086 | 1087 | ||
1087 | return job; | 1088 | return job; |
@@ -1094,7 +1095,7 @@ static void channel_gk20a_joblist_add(struct channel_gk20a *c, | |||
1094 | c->joblist.pre_alloc.put = (c->joblist.pre_alloc.put + 1) % | 1095 | c->joblist.pre_alloc.put = (c->joblist.pre_alloc.put + 1) % |
1095 | (c->joblist.pre_alloc.length); | 1096 | (c->joblist.pre_alloc.length); |
1096 | } else { | 1097 | } else { |
1097 | list_add_tail(&job->list, &c->joblist.dynamic.jobs); | 1098 | nvgpu_list_add_tail(&job->list, &c->joblist.dynamic.jobs); |
1098 | } | 1099 | } |
1099 | } | 1100 | } |
1100 | 1101 | ||
@@ -1105,7 +1106,7 @@ static void channel_gk20a_joblist_delete(struct channel_gk20a *c, | |||
1105 | c->joblist.pre_alloc.get = (c->joblist.pre_alloc.get + 1) % | 1106 | c->joblist.pre_alloc.get = (c->joblist.pre_alloc.get + 1) % |
1106 | (c->joblist.pre_alloc.length); | 1107 | (c->joblist.pre_alloc.length); |
1107 | } else { | 1108 | } else { |
1108 | list_del_init(&job->list); | 1109 | nvgpu_list_del(&job->list); |
1109 | } | 1110 | } |
1110 | } | 1111 | } |
1111 | 1112 | ||
@@ -1117,7 +1118,7 @@ bool channel_gk20a_joblist_is_empty(struct channel_gk20a *c) | |||
1117 | return !(CIRC_CNT(put, get, c->joblist.pre_alloc.length)); | 1118 | return !(CIRC_CNT(put, get, c->joblist.pre_alloc.length)); |
1118 | } | 1119 | } |
1119 | 1120 | ||
1120 | return list_empty(&c->joblist.dynamic.jobs); | 1121 | return nvgpu_list_empty(&c->joblist.dynamic.jobs); |
1121 | } | 1122 | } |
1122 | 1123 | ||
1123 | bool channel_gk20a_is_prealloc_enabled(struct channel_gk20a *c) | 1124 | bool channel_gk20a_is_prealloc_enabled(struct channel_gk20a *c) |
@@ -2644,7 +2645,7 @@ int gk20a_init_channel_support(struct gk20a *g, u32 chid) | |||
2644 | nvgpu_spinlock_init(&c->joblist.dynamic.lock); | 2645 | nvgpu_spinlock_init(&c->joblist.dynamic.lock); |
2645 | nvgpu_raw_spinlock_init(&c->timeout.lock); | 2646 | nvgpu_raw_spinlock_init(&c->timeout.lock); |
2646 | 2647 | ||
2647 | INIT_LIST_HEAD(&c->joblist.dynamic.jobs); | 2648 | nvgpu_init_list_node(&c->joblist.dynamic.jobs); |
2648 | nvgpu_init_list_node(&c->dbg_s_list); | 2649 | nvgpu_init_list_node(&c->dbg_s_list); |
2649 | nvgpu_init_list_node(&c->event_id_list); | 2650 | nvgpu_init_list_node(&c->event_id_list); |
2650 | nvgpu_init_list_node(&c->worker_item); | 2651 | nvgpu_init_list_node(&c->worker_item); |