gpu: nvgpu: non abortable TSG for vidmem-clear

When an engine faults due to unbound instance block, all
active TSGs are currently aborted. This includes the TSG
used by vidmem-clear task to clear vidmem buffers. From
this point nvgpu_vidmem_clear cannot submit jobs anymore.

Define TSG in MM CE context as non-abortable, and skip it
when aborting active TSGs.

Bug 2486146

Change-Id: I221259aec468e8ee3a24e80fab8d8fb7ee8607b0
Signed-off-by: Thomas Fleury <tfleury@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/2008954
(cherry picked from commit 6f2444dc5e128aa2b870796bd1e9dee7853f90af)
Reviewed-on: https://git-master.nvidia.com/r/2008942
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Thomas Fleury
2019-01-31 10:36:05 -08:00
committed by mobile promotions
parent bccb49d8fb
commit 13afcc24c3
5 changed files with 17 additions and 1 deletions

View File

@@ -228,6 +228,7 @@ int gk20a_init_tsg_support(struct gk20a *g, u32 tsgid)
tsg->in_use = false;
tsg->tsgid = tsgid;
tsg->abortable = true;
nvgpu_init_list_node(&tsg->ch_list);
nvgpu_rwsem_init(&tsg->ch_list_lock);