summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c
diff options
context:
space:
mode:
authorRichard Zhao <rizhao@nvidia.com>2017-11-13 18:22:13 -0500
committermobile promotions <svcmobile_promotions@nvidia.com>2017-11-16 15:38:54 -0500
commit42bc87167ad6eac96ff362bea82bcfdc9730e2ec (patch)
tree01e5ef1347adf590769dcf85a6ad96d3d22a2abd /drivers/gpu/nvgpu/vgpu/fifo_vgpu.c
parent326f97187a7757fbf388bebad1b3cc8520593ee7 (diff)
gpu: nvgpu: vgpu: abort the channel right after force reset it
For gp10b and previous chips, RM server will issue fake mmu fault to reset the channel. And the mmu fault event will be sent to vgpu client, which will cause the client to abort the channel or tsg. But on gv11b, RM server doesn't issue fake mmu fault any more. So I need to abort it right after the force reset is finished. Jira EVLR-1671 Change-Id: I11399fda84d31086ba1d4ffde5948e409cde2a28 Signed-off-by: Richard Zhao <rizhao@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1597378 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/vgpu/fifo_vgpu.c')
-rw-r--r--drivers/gpu/nvgpu/vgpu/fifo_vgpu.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c b/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c
index 66b2dbef..cc56f9f8 100644
--- a/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c
+++ b/drivers/gpu/nvgpu/vgpu/fifo_vgpu.c
@@ -714,6 +714,8 @@ int vgpu_fifo_force_reset_ch(struct channel_gk20a *ch,
714 p->handle = ch->virt_ctx; 714 p->handle = ch->virt_ctx;
715 err = vgpu_comm_sendrecv(&msg, sizeof(msg), sizeof(msg)); 715 err = vgpu_comm_sendrecv(&msg, sizeof(msg), sizeof(msg));
716 WARN_ON(err || msg.ret); 716 WARN_ON(err || msg.ret);
717 if (!err)
718 gk20a_channel_abort(ch, false);
717 return err ? err : msg.ret; 719 return err ? err : msg.ret;
718} 720}
719 721