diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/fifo_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/fifo_gk20a.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c index 5e794a55..9ed78640 100644 --- a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c | |||
@@ -1553,17 +1553,16 @@ void gk20a_fifo_set_ctx_mmu_error_tsg(struct gk20a *g, | |||
1553 | 1553 | ||
1554 | } | 1554 | } |
1555 | 1555 | ||
1556 | void gk20a_fifo_abort_tsg(struct gk20a *g, u32 tsgid, bool preempt) | 1556 | void gk20a_fifo_abort_tsg(struct gk20a *g, struct tsg_gk20a *tsg, bool preempt) |
1557 | { | 1557 | { |
1558 | struct tsg_gk20a *tsg = &g->fifo.tsg[tsgid]; | 1558 | struct channel_gk20a *ch = NULL; |
1559 | struct channel_gk20a *ch; | ||
1560 | 1559 | ||
1561 | nvgpu_log_fn(g, " "); | 1560 | nvgpu_log_fn(g, " "); |
1562 | 1561 | ||
1563 | g->ops.fifo.disable_tsg(tsg); | 1562 | g->ops.fifo.disable_tsg(tsg); |
1564 | 1563 | ||
1565 | if (preempt) { | 1564 | if (preempt) { |
1566 | g->ops.fifo.preempt_tsg(g, tsgid); | 1565 | g->ops.fifo.preempt_tsg(g, tsg->tsgid); |
1567 | } | 1566 | } |
1568 | 1567 | ||
1569 | nvgpu_rwsem_down_read(&tsg->ch_list_lock); | 1568 | nvgpu_rwsem_down_read(&tsg->ch_list_lock); |
@@ -1809,7 +1808,7 @@ static bool gk20a_fifo_handle_mmu_fault_locked( | |||
1809 | tsg); | 1808 | tsg); |
1810 | } | 1809 | } |
1811 | verbose = gk20a_fifo_error_tsg(g, tsg); | 1810 | verbose = gk20a_fifo_error_tsg(g, tsg); |
1812 | gk20a_fifo_abort_tsg(g, tsg->tsgid, false); | 1811 | gk20a_fifo_abort_tsg(g, tsg, false); |
1813 | } | 1812 | } |
1814 | 1813 | ||
1815 | /* put back the ref taken early above */ | 1814 | /* put back the ref taken early above */ |
@@ -1998,7 +1997,7 @@ void gk20a_fifo_recover_tsg(struct gk20a *g, u32 tsgid, bool verbose, | |||
1998 | gk20a_debug_dump(g); | 1997 | gk20a_debug_dump(g); |
1999 | } | 1998 | } |
2000 | 1999 | ||
2001 | gk20a_fifo_abort_tsg(g, tsgid, false); | 2000 | gk20a_fifo_abort_tsg(g, tsg, false); |
2002 | } | 2001 | } |
2003 | 2002 | ||
2004 | gr_gk20a_enable_ctxsw(g); | 2003 | gr_gk20a_enable_ctxsw(g); |