summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gv11b/fifo_gv11b.c
diff options
context:
space:
mode:
authorSeema Khowala <seemaj@nvidia.com>2018-03-28 12:30:25 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2018-03-30 17:54:24 -0400
commit298880b961c14ca9d105f749b733a0b602773a2d (patch)
tree571687377bec815afc776e4051126b8894a842d1 /drivers/gpu/nvgpu/gv11b/fifo_gv11b.c
parent493d0c8af3069745dd800ce9e093f8359a1fb851 (diff)
gpu: nvgpu: gv11b: do not poll if stall intr is set
Do not continue polling if engine save has not started yet and stall intr is set because if a stall intr is hit, preemption will anyways not get completed. Just set the reset_eng_bitmask of the engine for which ctx_status was being polled, As part of teardown corresponding engine will be reset. Bug 2069807 Change-Id: I9a506e0bca1d891ed5cd5d4953e292a40356f8ff Signed-off-by: Seema Khowala <seemaj@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1683694 GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gv11b/fifo_gv11b.c')
-rw-r--r--drivers/gpu/nvgpu/gv11b/fifo_gv11b.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gv11b/fifo_gv11b.c b/drivers/gpu/nvgpu/gv11b/fifo_gv11b.c
index 4050579e..039ca941 100644
--- a/drivers/gpu/nvgpu/gv11b/fifo_gv11b.c
+++ b/drivers/gpu/nvgpu/gv11b/fifo_gv11b.c
@@ -493,6 +493,12 @@ static int gv11b_fifo_poll_eng_ctx_status(struct gk20a *g, u32 id,
493 if (ctx_stat == 493 if (ctx_stat ==
494 fifo_engine_status_ctx_status_ctxsw_switch_v()) { 494 fifo_engine_status_ctx_status_ctxsw_switch_v()) {
495 /* Eng save hasn't started yet. Continue polling */ 495 /* Eng save hasn't started yet. Continue polling */
496 if (stall_intr) {
497 /* if stall intr stop polling */
498 *reset_eng_bitmask |= BIT(act_eng_id);
499 ret = 0;
500 break;
501 }
496 502
497 } else if (ctx_stat == 503 } else if (ctx_stat ==
498 fifo_engine_status_ctx_status_valid_v() || 504 fifo_engine_status_ctx_status_valid_v() ||