summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/msm/msm_gpu.c
diff options
context:
space:
mode:
authorRob Clark <robdclark@gmail.com>2014-05-30 22:47:38 +0400
committerRob Clark <robdclark@gmail.com>2014-06-02 15:36:11 +0400
commita7d3c9509b2fecf8e593f3c933ab302cbe987d2e (patch)
tree7713d6f2e17c96c442cd7a162dd66f526f71da93 /drivers/gpu/drm/msm/msm_gpu.c
parentfb27b8f29f60b8799df1aa60cd9647d56d62810e (diff)
downloadlinux-a7d3c9509b2fecf8e593f3c933ab302cbe987d2e.tar.xz
drm/msm: add rd logging debugfs
To ease debugging, add debugfs file which can be cat/tail'd to log submits, along with fence #. If GPU hangs, you can look at 'gpu' debugfs file to find last completed fence and current register state, and compare with logged rd file to narrow down the DRAW_INDX which triggered the GPU hang. Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'drivers/gpu/drm/msm/msm_gpu.c')
-rw-r--r--drivers/gpu/drm/msm/msm_gpu.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/msm/msm_gpu.c b/drivers/gpu/drm/msm/msm_gpu.c
index 3e667ca1f2b9..67371f3ddf99 100644
--- a/drivers/gpu/drm/msm/msm_gpu.c
+++ b/drivers/gpu/drm/msm/msm_gpu.c
@@ -377,6 +377,10 @@ int msm_gpu_submit(struct msm_gpu *gpu, struct msm_gem_submit *submit,
inactive_cancel(gpu);
+ msm_rd_dump_submit(submit);
+
+ gpu->submitted_fence = submit->fence;
+
ret = gpu->funcs->submit(gpu, submit, ctx);
priv->lastctx = ctx;