[PATCH 3/4] drm/i915/display: debug log about fence wait timeouts and other errors
Jani Nikula <[email protected]>
| Newsgroups | org.freedesktop.lists.intel-gfx,org.freedesktop.lists.intel-xe |
|---|---|
| Organization | Intel Finland Oy - BIC 0357606-4 - c/o Alberga Business Park, 6 krs Bertel Jungin Aukio 5, 02600 Espoo, Finland |
| Message-ID | <6e6531be9fb529b59ceca8aa0194a3d73abd0808.1787148235.git.jani.nikula@intel.com> |
Currently there's no indication if fence wait timed out. Debug log about timeouts and other errors. Signed-off-by: Jani Nikula <[email protected]> --- drivers/gpu/drm/i915/display/intel_display.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c index eed906a30749..aa5d41dac8a9 100644 --- a/drivers/gpu/drm/i915/display/intel_display.c +++ b/drivers/gpu/drm/i915/display/intel_display.c @@ -7274,6 +7274,7 @@ static void skl_commit_modeset_enables(struct intel_atomic_state *state) static void intel_atomic_commit_fence_wait(struct intel_atomic_state *state) { + struct intel_display *display = to_intel_display(state); struct drm_plane *plane; struct drm_plane_state *new_plane_state; long ret; @@ -7285,8 +7286,13 @@ static void intel_atomic_commit_fence_wait(struct intel_atomic_state *state) ret = dma_fence_wait_timeout(new_plane_state->fence, false, i915_fence_timeout()); - if (ret <= 0) + if (!ret) + ret = -ETIMEDOUT; + if (ret < 0) { + drm_dbg_kms(display->drm, "[PLANE:%d:%s] fence wait failed (%pe)\n", + plane->base.id, plane->name, ERR_PTR(ret)); break; + } dma_fence_put(new_plane_state->fence); new_plane_state->fence = NULL; -- 2.47.3