summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/channel_gk20a.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/channel_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/channel_gk20a.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c
index 16d4711f..64266fe5 100644
--- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c
@@ -259,7 +259,7 @@ void gk20a_channel_abort(struct channel_gk20a *ch, bool channel_preempt)
259 259
260 ch->g->ops.fifo.disable_channel(ch); 260 ch->g->ops.fifo.disable_channel(ch);
261 261
262 if (channel_preempt && ch->ch_ctx.gr_ctx) 262 if (channel_preempt && gk20a_is_channel_marked_as_tsg(ch))
263 ch->g->ops.fifo.preempt_channel(ch->g, ch->chid); 263 ch->g->ops.fifo.preempt_channel(ch->g, ch->chid);
264 264
265 gk20a_channel_abort_clean_up(ch); 265 gk20a_channel_abort_clean_up(ch);
@@ -421,8 +421,8 @@ static void gk20a_free_channel(struct channel_gk20a *ch, bool force)
421 g->ops.fecs_trace.unbind_channel(g, ch); 421 g->ops.fecs_trace.unbind_channel(g, ch);
422#endif 422#endif
423 423
424 /* release channel ctx */ 424 if(g->ops.fifo.free_channel_ctx_header)
425 g->ops.gr.free_channel_ctx(ch, was_tsg); 425 g->ops.fifo.free_channel_ctx_header(ch);
426 426
427 gk20a_gr_flush_channel_tlb(gr); 427 gk20a_gr_flush_channel_tlb(gr);
428 428