summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gp10b/gr_gp10b.c
diff options
context:
space:
mode:
authorSeema Khowala <seemaj@nvidia.com>2017-03-17 14:29:53 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-03-23 20:18:52 -0400
commita8efce77f5fab497b477d1f5fd461cded528bc0b (patch)
treea605dd54e9de43245436b97c755a120d85b40af5 /drivers/gpu/nvgpu/gp10b/gr_gp10b.c
parente1e059454a00ea28c5c9ab992eaf7f7c6780c3b8 (diff)
gpu: nvgpu: null check for fault_ch
gk20a_gr_get_channel_from_ctx() could return NULL as a result fault_ch could be null JIRA GPUT19X-7 Change-Id: I2c8f099f63f30e576ecd221e3bec25070b026ced Signed-off-by: Seema Khowala <seemaj@nvidia.com> Reviewed-on: http://git-master/r/1323252 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gp10b/gr_gp10b.c')
-rw-r--r--drivers/gpu/nvgpu/gp10b/gr_gp10b.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gp10b/gr_gp10b.c b/drivers/gpu/nvgpu/gp10b/gr_gp10b.c
index 6de6b599..7f43a6ce 100644
--- a/drivers/gpu/nvgpu/gp10b/gr_gp10b.c
+++ b/drivers/gpu/nvgpu/gp10b/gr_gp10b.c
@@ -1759,8 +1759,7 @@ static int gr_gp10b_pre_process_sm_exception(struct gk20a *g,
1759 bool *early_exit, bool *ignore_debugger) 1759 bool *early_exit, bool *ignore_debugger)
1760{ 1760{
1761 int ret; 1761 int ret;
1762 bool cilp_enabled = (fault_ch->ch_ctx.gr_ctx->compute_preempt_mode == 1762 bool cilp_enabled = false;
1763 NVGPU_COMPUTE_PREEMPTION_MODE_CILP) ;
1764 u32 global_mask = 0, dbgr_control0, global_esr_copy; 1763 u32 global_mask = 0, dbgr_control0, global_esr_copy;
1765 u32 gpc_stride = nvgpu_get_litter_value(g, GPU_LIT_GPC_STRIDE); 1764 u32 gpc_stride = nvgpu_get_litter_value(g, GPU_LIT_GPC_STRIDE);
1766 u32 tpc_in_gpc_stride = nvgpu_get_litter_value(g, GPU_LIT_TPC_IN_GPC_STRIDE); 1765 u32 tpc_in_gpc_stride = nvgpu_get_litter_value(g, GPU_LIT_TPC_IN_GPC_STRIDE);
@@ -1769,6 +1768,10 @@ static int gr_gp10b_pre_process_sm_exception(struct gk20a *g,
1769 *early_exit = false; 1768 *early_exit = false;
1770 *ignore_debugger = false; 1769 *ignore_debugger = false;
1771 1770
1771 if (fault_ch)
1772 cilp_enabled = (fault_ch->ch_ctx.gr_ctx->compute_preempt_mode ==
1773 NVGPU_COMPUTE_PREEMPTION_MODE_CILP);
1774
1772 gk20a_dbg(gpu_dbg_fn | gpu_dbg_gpu_dbg, "SM Exception received on gpc %d tpc %d = %u\n", 1775 gk20a_dbg(gpu_dbg_fn | gpu_dbg_gpu_dbg, "SM Exception received on gpc %d tpc %d = %u\n",
1773 gpc, tpc, global_esr); 1776 gpc, tpc, global_esr);
1774 1777