[Intel-gfx] [PATCH] Revert "drm/atomic: document and enforce rules around "spurious" EBUSY"

Ville Syrjälä ville.syrjala at linux.intel.com
Wed Feb 10 15:07:03 UTC 2021


On Wed, Feb 10, 2021 at 01:38:45PM +0000, Simon Ser wrote:
> On Wednesday, February 10th, 2021 at 2:16 PM, Daniel Vetter <daniel at ffwll.ch> wrote:
> 
> > On Tue, Feb 09, 2021 at 04:14:01PM -0800, Manasi Navare wrote:
> >
> > > These additional checks added to avoid EBUSY give unnecessary WARN_ON
> > > in case of big joiner used in i915 in which case even if the modeset
> > > is requested on a single pipe, internally another consecutive
> > > pipe is stolen and used to drive half of the transcoder timings.
> > > So in this case it is expected that requested crtc and affected crtcs
> > > do not match. Hence the added WARN ON becomes irrelevant.
> 
> The WARN_ON only happens if allow_modeset == false. If allow_modeset == true,
> then the driver is allowed to steal an unrelated pipe.
> 
> Maybe i915 is stealing a pipe without allow_modeset?

No. All page flips etc. will have to get split up internally
between multiple crtcs.

So I think there's basically three options:
a) massive rewrite of i915 to bypass even more of drm_atomic stuff
b) allow i915 to silence that warning, which opens up the question
   whether the warn is doing any good if it can just be bypassed
c) nuke the warning entirely

a) is not going to happen, and it would any way allow i915 to
do things any which way it wants without tripping the warn,
rendering the warn entirely toothless.

Hmm. Maybe there is a d) which would be to ignore all crtcs
that are not logically enabled in the warn? Not sure if that
could allow something to slit through that people want it to
catch?

-- 
Ville Syrjälä
Intel


More information about the Intel-gfx mailing list