From: Maarten Lankhorst <maarten.lankhorst@intel.com>
To: Jani Nikula <jani.nikula@intel.com>,
intel-gfx@lists.freedesktop.org, intel-xe@lists.freedesktop.org
Cc: maarten.lankhorst@linux.intel.com, ville.syrjala@linux.intel.com
Subject: Re: [PATCH 4/4] drm/i915/display: use fixed 10 second timeout for fence wait
Date: Fri, 21 Aug 2026 18:05:11 +0200 [thread overview]
Message-ID: <859cb981-4039-4f0e-801f-c9f8cd630ded@intel.com> (raw)
In-Reply-To: <f61a3a828b0c0159d63d132f8f557a546a6f9ced.1787148235.git.jani.nikula@intel.com>
[-- Attachment #1: Type: text/plain, Size: 2904 bytes --]
Hello,
On 8/19/26 16:05, Jani Nikula wrote:
> i915 has a configurable fence wait timeout, defaulting to 10 seconds,
> and xe uses MAX_SCHEDULE_TIMEOUT i.e. it has no timeout.
>
> Use a fixed 10 second timeout for both drivers instead of having them do
> different things. Ditch the now unused compat header from xe.
>
> i915 actually needs the timeout to deal with CI reset tests, but there
> shouldn't be any harm in having a 10 second timeout in xe either.
>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Cc: Maarten Lankhorst <maarten.lankhorst@intel.com>
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>
> ---
>
> There have been a number of stabs at this in the past (see links below),
> and all of them have been rejected with one reason or another.
>
> My primary goal here is just to remove the annoying i915_fence_timeout()
> usage and i915 vs. xe difference. Further cleanup can come later (or
> never, as it usually is).
>
> https://lore.kernel.org/r/20251112155612.8320-1-jani.nikula@intel.com
> https://lore.kernel.org/r/20251113155332.789554-1-jani.nikula@intel.com
> https://lore.kernel.org/r/8cde57236982fc3ca1a5608332943d3b9274a45a.1775661609.git.jani.nikula@intel.com
> https://lore.kernel.org/r/20260408233458.22666-6-ville.syrjala@linux.intel.com
> ---
> drivers/gpu/drm/i915/display/intel_display.c | 4 +---
> .../gpu/drm/xe/compat-i915-headers/i915_config.h | 16 ----------------
> 2 files changed, 1 insertion(+), 19 deletions(-)
> delete mode 100644 drivers/gpu/drm/xe/compat-i915-headers/i915_config.h
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index aa5d41dac8a9..c3a11e9e69e2 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -50,7 +50,6 @@
> #include "g4x_dp.h"
> #include "g4x_hdmi.h"
> #include "hsw_ips.h"
> -#include "i915_config.h"
> #include "i9xx_plane.h"
> #include "i9xx_plane_regs.h"
> #include "i9xx_wm.h"
> @@ -7284,8 +7283,7 @@ static void intel_atomic_commit_fence_wait(struct intel_atomic_state *state)
> if (!new_plane_state->fence)
> continue;
>
> - ret = dma_fence_wait_timeout(new_plane_state->fence, false,
> - i915_fence_timeout());
> + ret = dma_fence_wait_timeout(new_plane_state->fence, false, 10 * HZ);
> if (!ret)
> ret = -ETIMEDOUT;
> if (ret < 0) {
>
Not waiting on fences until they're signaled is an existing issue in i915, and was added as a workaround for a deadlock when GPU reset has to reset display as well on old platforms. This requires a modeset to disable everything, which may hang since it could wait on a fence that may only be signaled after gpu reset completes.
Can you test if gpu_reset_clobbers_display and force_reset_modeset_test are set, and if not set the timeout to infinity on i915 as well?
Kind regards,
~Maarten Lankhorst
[-- Attachment #2: Type: text/html, Size: 4055 bytes --]
next prev parent reply other threads:[~2026-08-21 16:04 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-19 14:05 [PATCH 0/4] drm/{i915, xe}/display: another stab at i915_fence_timeout() removal Jani Nikula
2026-08-19 14:05 ` [PATCH 1/4] drm/i915/display: use struct intel_atomic_state *state variable naming Jani Nikula
2026-08-19 14:05 ` [PATCH 2/4] drm/i915/display: reduce indent in intel_atomic_commit_fence_wait() Jani Nikula
2026-08-19 14:05 ` [PATCH 3/4] drm/i915/display: debug log about fence wait timeouts and other errors Jani Nikula
2026-08-19 14:05 ` [PATCH 4/4] drm/i915/display: use fixed 10 second timeout for fence wait Jani Nikula
2026-08-21 16:05 ` Maarten Lankhorst [this message]
2026-08-27 12:36 ` Jani Nikula
2026-08-19 14:11 ` ✗ CI.checkpatch: warning for drm/{i915, xe}/display: another stab at i915_fence_timeout() removal Patchwork
2026-08-19 14:12 ` ✓ CI.KUnit: success " Patchwork
2026-08-19 15:09 ` ✓ Xe.CI.BAT: " Patchwork
2026-08-19 17:04 ` ✗ Xe.CI.FULL: failure " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=859cb981-4039-4f0e-801f-c9f8cd630ded@intel.com \
--to=maarten.lankhorst@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=intel-xe@lists.freedesktop.org \
--cc=jani.nikula@intel.com \
--cc=maarten.lankhorst@linux.intel.com \
--cc=ville.syrjala@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox