summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKonsta Holtta <kholtta@nvidia.com>2016-05-25 06:24:37 -0400
committerTerje Bergstrom <tbergstrom@nvidia.com>2016-06-06 11:03:11 -0400
commit822b0dc53823e9c5bc3cbcdc78a62cc2c7f0647c (patch)
treee1fd040a0f2fb47005c487d5544d667f2c3a986e
parent4dd4587f1734f06d1bc2173a282fcd7a10613d58 (diff)
gpu: nvgpu: fix patch write error check in update_ctxsw_preemption_mode
Don't attempt to access memory if the patch context can't be mapped, but print an error message instead. Change-Id: I2d0ec22378ace0ef826f5a84a9ce4d35466f7832 Signed-off-by: Konsta Holtta <kholtta@nvidia.com> Reviewed-on: http://git-master/r/1157281 GVS: Gerrit_Virtual_Submit Reviewed-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
-rw-r--r--drivers/gpu/nvgpu/gv11b/gr_gv11b.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gv11b/gr_gv11b.c b/drivers/gpu/nvgpu/gv11b/gr_gv11b.c
index cb9c1902..ad8e4eff 100644
--- a/drivers/gpu/nvgpu/gv11b/gr_gv11b.c
+++ b/drivers/gpu/nvgpu/gv11b/gr_gv11b.c
@@ -998,6 +998,11 @@ static void gr_gv11b_update_ctxsw_preemption_mode(struct gk20a *g,
998 gr_ctx->t18x.preempt_ctxsw_buffer.gpu_va >> 8); 998 gr_ctx->t18x.preempt_ctxsw_buffer.gpu_va >> 8);
999 999
1000 err = gr_gk20a_ctx_patch_write_begin(g, ch_ctx); 1000 err = gr_gk20a_ctx_patch_write_begin(g, ch_ctx);
1001 if (err) {
1002 gk20a_err(dev_from_gk20a(g),
1003 "can't map patch context");
1004 goto out;
1005 }
1001 1006
1002 addr = (u64_lo32(gr_ctx->t18x.betacb_ctxsw_buffer.gpu_va) >> 1007 addr = (u64_lo32(gr_ctx->t18x.betacb_ctxsw_buffer.gpu_va) >>
1003 gr_gpcs_setup_attrib_cb_base_addr_39_12_align_bits_v()) | 1008 gr_gpcs_setup_attrib_cb_base_addr_39_12_align_bits_v()) |
@@ -1049,6 +1054,7 @@ static void gr_gv11b_update_ctxsw_preemption_mode(struct gk20a *g,
1049 gr_gk20a_ctx_patch_write_end(g, ch_ctx); 1054 gr_gk20a_ctx_patch_write_end(g, ch_ctx);
1050 } 1055 }
1051 1056
1057out:
1052 gk20a_dbg_fn("done"); 1058 gk20a_dbg_fn("done");
1053} 1059}
1054 1060