Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Nemesa Garg" <nemesa.garg@intel.com>
Cc: intel-xe@lists.freedesktop.org, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/i915/display: Clear SEL_FETCH_PLANE_CTL on plane disable
Date: Wed, 12 Aug 2026 10:15:58 +0000	[thread overview]
Message-ID: <20260812101558.DBE491F000E9@smtp.kernel.org> (raw)
In-Reply-To: <20260812094547.1808459-1-nemesa.garg@intel.com>

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:

Pre-existing issues:
- [High] The fix for orphaned selective fetch enable bits is incomplete, missing the identical flaw in the cursor plane disable logic (`i9xx_cursor_disable_sel_fetch_arm()`).
--

--- Patch [1]: [PATCH] drm/i915/display: Clear SEL_FETCH_PLANE_CTL on plane disable ---
commit e0077c037f1d1d0137a05dcfc36800e4add084cd
Author: Nemesa Garg <nemesa.garg@intel.com>
drm/i915/display: Clear SEL_FETCH_PLANE_CTL on plane disable

This commit fixes an issue where disabling a plane after selective fetch
was turned off would leave the SEL_FETCH_PLANE_CTL enable bit set in
hardware. It changes the early return condition to check for hardware
support rather than the current state.

Closes: https://gitlab.freedesktop.org/drm/xe/kernel/-/work_items/8739

> diff --git a/drivers/gpu/drm/i915/display/skl_universal_plane.c b/drivers/gpu/drm/i915/display/skl_universal_plane.c
> index 07a6832933521..afc1df1b84a4a 100644
> --- a/drivers/gpu/drm/i915/display/skl_universal_plane.c
> +++ b/drivers/gpu/drm/i915/display/skl_universal_plane.c
> @@ -885,7 +885,13 @@ static void icl_plane_disable_sel_fetch_arm(struct intel_dsb *dsb,
>  	struct intel_display *display = to_intel_display(plane);
>  	enum pipe pipe = plane->pipe;
>  
> -	if (!crtc_state->enable_psr2_sel_fetch)
> +	/*
> +	 * Clear this whenever the hardware has selective fetch, not just when
> +	 * the current state uses it. The plane may have been enabled with
> +	 * selective fetch earlier and had its enable bit orphaned when the
> +	 * feature was switched off.
> +	 */
> +	if (!HAS_PSR2_SEL_FETCH(display))
>  		return;
>  
>  	intel_de_write_dsb(display, dsb, SEL_FETCH_PLANE_CTL(pipe, plane->id), 0);

[Severity: High]
This is a pre-existing issue, but does this fix need to be applied to the
cursor plane logic as well? 

Looking at drivers/gpu/drm/i915/display/intel_cursor.c, the function
i9xx_cursor_disable_sel_fetch_arm() still uses the old state-based early
return:

	if (!crtc_state->enable_psr2_sel_fetch)
		return;

	intel_de_write_dsb(display, dsb, SEL_FETCH_CUR_CTL(pipe), 0);

If selective fetch is dynamically disabled while a cursor plane is active,
and then the cursor is disabled, this early return will leave the
SEL_FETCH_CUR_CTL bit set in hardware. 

If selective fetch is later re-enabled, could the hardware mistakenly resume
fetching for the disabled cursor and keep its old Display Data Buffer range
reserved, potentially starving other planes?

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260812094547.1808459-1-nemesa.garg@intel.com?part=1

  parent reply	other threads:[~2026-08-12 17:41 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-12  9:45 [PATCH] drm/i915/display: Clear SEL_FETCH_PLANE_CTL on plane disable Nemesa Garg
2026-08-12 10:07 ` ✓ CI.KUnit: success for " Patchwork
2026-08-12 10:15 ` sashiko-bot [this message]
2026-08-12 10:17 ` [PATCH] " Jani Nikula
2026-08-12 10:42   ` Garg, Nemesa
2026-08-12 11:05     ` Jani Nikula
2026-08-12 10:46 ` ✓ Xe.CI.BAT: success for " Patchwork
2026-08-12 11:56 ` ✓ Xe.CI.FULL: " 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=20260812101558.DBE491F000E9@smtp.kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=intel-xe@lists.freedesktop.org \
    --cc=nemesa.garg@intel.com \
    --cc=sashiko-reviews@lists.linux.dev \
    /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