All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Jani Nikula <jani.nikula@intel.com>
Cc: intel-gfx@lists.freedesktop.org, intel-xe@lists.freedesktop.org
Subject: Re: [CI] drm/i915/display: change pipe allocation order for discrete platforms
Date: Thu, 2 Apr 2026 16:33:08 +0300	[thread overview]
Message-ID: <ac5wFFxx0HHpczWz@intel.com> (raw)
In-Reply-To: <acqYWkrs5b3MOrnO@intel.com>

On Mon, Mar 30, 2026 at 06:35:54PM +0300, Ville Syrjälä wrote:
> On Mon, Mar 30, 2026 at 02:37:47PM +0300, Jani Nikula wrote:
> > On Mon, 16 Mar 2026, Jani Nikula <jani.nikula@intel.com> wrote:
> > > When big joiner is enabled, it reserves the adjacent pipe as the
> > > secondary pipe. This happens without the user space knowing, and
> > > subsequent attempts at using the CRTC with that pipe will fail. If the
> > > user space does not have a coping mechanism, i.e. trying another CRTC,
> > > this leads to a black screen.
> > >
> > > Try to reduce the impact of the problem on discrete platforms by mapping
> > > the CRTCs to pipes in order A, C, B, and D. If the user space reserves
> > > CRTCs in order, this should trick it to using pipes that are more likely
> > > to be available for and after joining.
> > >
> > > Limit this to discrete platforms, which have four pipes, and no eDP, a
> > > combination that should benefit the most with least drawbacks.
> > 
> > Ville, I think it's time to review and, pretty soon, merge this.
> > 
> > Our IGT changes to deconflate CRTCs and pipes have been merged, and
> > there's the removal of invalid igt_crtc_t at [1] left. The trybot CI
> > results on i915 for swapping pipes B and C on all platforms, not just
> > discrete like here, didn't break anything either anymore [2].
> > 
> > I'm contemplating slapping Cc: stable on this too.
> > 
> > There's the FIXME on the CRTC index warning.
> 
> IIRC we already concluded that the WARN is unnecessary. I'd have to
> look through the previous mails to see what I actually said there.

Couldn't find the mail, but glanced at the code again, and I think I
removed that requirement long ago.

After commit 3a5e09d82f97 ("drm/i915: Fix intel_modeset_pipe_config_late()
for bigjoiner") intel_atomic_check_(big)joiner() isn't even in the same
loop anymore as the uapi->hw state copy,compute_config*(),etc. so clearly
all that stuff will have happened beforehand. Before that the situation
was a bit more unclear so that requirement might have still held then.
Too lazy to really dig that far.

> 
> > With the A+C and B+D
> > pairing there's no issue, the CRTC indexes remain in that order. But can
> > we ever really end up with B+C pairing?
> 
> It might be rare if userspace picks crtcs in order. But IIRC we had
> bugs where it was clear userspace was just picking random crtcs willy
> nilly. IIRC it was sway doing it, and I think I even proposed a
> uapi documentation update to suggest using crtcs in order. Can't 
> remember that happened to that one.
> 
> But I think we still want the "walk the crtcs in pipe order" change,
> mainly to keep the more optimal commit sequence. Also I'm not quite
> 100% convinced we don't have some subtle assumption somewhere about
> the order.
> 
> BTW I just realized that DG2 may also get a slight extra benefit from
> the reordering because A+C has twice the dbuf space compared to A+B.
> 
> -- 
> Ville Syrjälä
> Intel

-- 
Ville Syrjälä
Intel

  parent reply	other threads:[~2026-04-02 13:33 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-16 12:18 [CI] drm/i915/display: change pipe allocation order for discrete platforms Jani Nikula
2026-03-16 17:59 ` ✓ CI.KUnit: success for drm/i915/display: change pipe allocation order for discrete platforms (rev4) Patchwork
2026-03-16 18:39 ` ✓ Xe.CI.BAT: " Patchwork
2026-03-17  8:39 ` ✓ CI.KUnit: success for drm/i915/display: change pipe allocation order for discrete platforms (rev5) Patchwork
2026-03-17  8:55 ` ✓ i915.CI.BAT: success for drm/i915/display: change pipe allocation order for discrete platforms (rev4) Patchwork
2026-03-17  9:44 ` ✓ Xe.CI.BAT: success for drm/i915/display: change pipe allocation order for discrete platforms (rev5) Patchwork
2026-03-17 15:52 ` ✗ i915.CI.Full: failure for drm/i915/display: change pipe allocation order for discrete platforms (rev4) Patchwork
2026-03-18 14:54 ` ✗ Xe.CI.FULL: failure for drm/i915/display: change pipe allocation order for discrete platforms (rev5) Patchwork
2026-03-30 11:37 ` [CI] drm/i915/display: change pipe allocation order for discrete platforms Jani Nikula
2026-03-30 15:35   ` Ville Syrjälä
2026-04-02  9:43     ` Jani Nikula
2026-04-02 10:18       ` Ville Syrjälä
2026-04-02 13:33     ` Ville Syrjälä [this message]
  -- strict thread matches above, loose matches on Subject: below --
2026-02-06 12:37 Jani Nikula
2026-02-09 15:10 ` Jani Nikula

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=ac5wFFxx0HHpczWz@intel.com \
    --to=ville.syrjala@linux.intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=intel-xe@lists.freedesktop.org \
    --cc=jani.nikula@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.