From 377d040de717b9f4380740877d159c1cc831c76f Mon Sep 17 00:00:00 2001 From: Pankaj Gupta Date: Mon, 20 Apr 2020 17:47:37 +0530 Subject: [PATCH] msm: kgsl: Fix snapshot collection after preempt trigger failure Do not set FAULT_SKIP_SNAPSHOT in case of not collecting inline snapshot. Change-Id: I5f3de5881768ab07de989010096a58bea749c680 Signed-off-by: Pankaj Gupta --- drivers/gpu/msm/adreno_a6xx_preempt.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/msm/adreno_a6xx_preempt.c b/drivers/gpu/msm/adreno_a6xx_preempt.c index be69d3ce0024..dd80eeacc474 100644 --- a/drivers/gpu/msm/adreno_a6xx_preempt.c +++ b/drivers/gpu/msm/adreno_a6xx_preempt.c @@ -374,10 +374,14 @@ void a6xx_preemption_trigger(struct adreno_device *adreno_dev) return; err: /* If fenced write fails, take inline snapshot and trigger recovery */ - if (!in_interrupt()) + if (!in_interrupt()) { gmu_core_snapshot(device); + adreno_set_gpu_fault(adreno_dev, + ADRENO_GMU_FAULT_SKIP_SNAPSHOT); + } else { + adreno_set_gpu_fault(adreno_dev, ADRENO_GMU_FAULT); + } adreno_set_preempt_state(adreno_dev, ADRENO_PREEMPT_NONE); - adreno_set_gpu_fault(adreno_dev, ADRENO_GMU_FAULT_SKIP_SNAPSHOT); adreno_dispatcher_schedule(device); /* Clear the keep alive */ if (gmu_core_isenabled(device))