diff options
author | Erico Nunes <nunes.erico@gmail.com> | 2024-01-24 03:59:45 +0100 |
---|---|---|
committer | Qiang Yu <yuq825@gmail.com> | 2024-02-12 16:27:28 +0800 |
commit | e721d1cc8101a26fba22dc9a62309522e15bd0c7 (patch) | |
tree | 620f6aab20057514441fe70b4f878e2f1968ce09 /drivers/gpu/drm/lima/lima_ctx.c | |
parent | 53cb55b20208eaa79de63c82795c8d51caa9cfcc (diff) | |
download | linux-e721d1cc8101a26fba22dc9a62309522e15bd0c7.tar.gz linux-e721d1cc8101a26fba22dc9a62309522e15bd0c7.tar.bz2 linux-e721d1cc8101a26fba22dc9a62309522e15bd0c7.zip |
drm/lima: remove guilty drm_sched context handling
Marking the context as guilty currently only makes the application which
hits a single timeout problem to stop its rendering context entirely.
All jobs submitted later are dropped from the guilty context.
Lima runs on fairly underpowered hardware for modern standards and it is
not entirely unreasonable that a rendering job may time out occasionally
due to high system load or too demanding application stack. In this case
it would be generally preferred to report the error but try to keep the
application going.
Other similar embedded GPU drivers don't make use of the guilty context
flag. Now that there are reliability improvements to the lima timeout
recovery handling, drop the guilty contexts to let the application keep
running in this case.
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Acked-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240124025947.2110659-7-nunes.erico@gmail.com
Diffstat (limited to 'drivers/gpu/drm/lima/lima_ctx.c')
-rw-r--r-- | drivers/gpu/drm/lima/lima_ctx.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/lima/lima_ctx.c b/drivers/gpu/drm/lima/lima_ctx.c index 8389f2d7d021..0e668fc1e0f9 100644 --- a/drivers/gpu/drm/lima/lima_ctx.c +++ b/drivers/gpu/drm/lima/lima_ctx.c @@ -19,7 +19,7 @@ int lima_ctx_create(struct lima_device *dev, struct lima_ctx_mgr *mgr, u32 *id) kref_init(&ctx->refcnt); for (i = 0; i < lima_pipe_num; i++) { - err = lima_sched_context_init(dev->pipe + i, ctx->context + i, &ctx->guilty); + err = lima_sched_context_init(dev->pipe + i, ctx->context + i); if (err) goto err_out0; } |