summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/msm/msm_gem_submit.c
diff options
context:
space:
mode:
authorRob Clark <robdclark@gmail.com>2015-06-07 17:46:04 (GMT)
committerRob Clark <robdclark@gmail.com>2015-06-11 17:11:06 (GMT)
commit1a370be9ac51129e40b0ed7fa71d2b2b92bc47e5 (patch)
tree678bad05754937920c7d09fb66dd5a356ed9f172 /drivers/gpu/drm/msm/msm_gem_submit.c
parent56c2da8338d5cdfc0695eeed96ebe03cf2ac0321 (diff)
downloadlinux-1a370be9ac51129e40b0ed7fa71d2b2b92bc47e5.tar.xz
drm/msm: restart queued submits after hang
Track the list of in-flight submits. If the gpu hangs, retire up to an including the offending submit, and then re-submit the remainder. This way, for concurrently running piglit tests (for example), one failing test doesn't cause unrelated tests to fail simply because it's submit was queued up after one that triggered a hang. Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to 'drivers/gpu/drm/msm/msm_gem_submit.c')
-rw-r--r--drivers/gpu/drm/msm/msm_gem_submit.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/gpu/drm/msm/msm_gem_submit.c b/drivers/gpu/drm/msm/msm_gem_submit.c
index cd0554f..6d7cd3f 100644
--- a/drivers/gpu/drm/msm/msm_gem_submit.c
+++ b/drivers/gpu/drm/msm/msm_gem_submit.c
@@ -314,7 +314,6 @@ static void submit_cleanup(struct msm_gem_submit *submit, bool fail)
}
ww_acquire_fini(&submit->ticket);
- kfree(submit);
}
int msm_ioctl_gem_submit(struct drm_device *dev, void *data,