Re: [Intel-gfx] [3.14.0-rc4] regression: drm FIFO underruns

From: Daniel Vetter
Date: Tue May 13 2014 - 12:38:48 EST


On Tue, May 13, 2014 at 05:21:49PM +0200, Jörg Otte wrote:
> 2014-05-13 15:22 GMT+02:00 Daniel Vetter <daniel@xxxxxxxx>:
> > On Tue, May 13, 2014 at 12:38:41PM +0200, Daniel Vetter wrote:
> >> On Tue, May 13, 2014 at 12:29 PM, Jörg Otte <jrg.otte@xxxxxxxxx> wrote:
> >> >>> Branch drm-intel-nightly as of
> >> >>> ed60c27 drm-intel-nightly: 2014y-05m-09d-21h-51m-45s integration manifest
> >> >>> looks badly:
> >> >>> - KDE splash screen on boot-up is not visible
> >> >>> - x-windows don't have title and menu bars
> >> >>> - KDE system menu is not visible
> >> >>> - moving windows around destroys its content
> >> >>
> >> >> Ugh, that's ugly. Nothing else change like e.g. the version of
> >> >> xfree-video-intel?
> >> >
> >> > (II) Loading /usr/lib/xorg/modules/drivers/intel_drv.so
> >> > (II) Module intel: vendor="X.Org Foundation"
> >> > compiled for 1.11.3, module version = 2.17.0
> >> > Module class: X.Org Video Driver
> >> > ABI class: X.Org Video Driver, version 11.0
> >>
> >> Chris, any ideas? It's an ivybridge apparently.
> >>
> >> For the fifo underruns I think we've fully confirmed that they only
> >> happen on boot-up. I'll try to come up with some ideas what could have
> >> gone wrong there.
> >
> > Please test the below patch.
> > -Daniel
> >
> > diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
> > index b10fbde1d5ee..63ced2dee027 100644
> > --- a/drivers/gpu/drm/i915/i915_irq.c
> > +++ b/drivers/gpu/drm/i915/i915_irq.c
> > @@ -427,9 +427,6 @@ bool __intel_set_cpu_fifo_underrun_reporting(struct drm_device *dev,
> >
> > ret = !intel_crtc->cpu_fifo_underrun_disabled;
> >
> > - if (enable == ret)
> > - goto done;
> > -
> > intel_crtc->cpu_fifo_underrun_disabled = !enable;
> >
> > if (enable && (INTEL_INFO(dev)->gen < 5 || IS_VALLEYVIEW(dev)))
> > @@ -441,7 +438,6 @@ bool __intel_set_cpu_fifo_underrun_reporting(struct drm_device *dev,
> > else if (IS_GEN8(dev))
> > broadwell_set_fifo_underrun_reporting(dev, pipe, enable);
> >
> > -done:
> > return ret;
> > }
> >
> > --
>
> Doesn't work for me, I still have an underrun at boot-up.

I'm at a loss tbh with ideas. We successfully disable both pipes, then
enable pipe A and it all works.

Then we enable pipe B and _both_ pipes underrun immediately afterwards.
Really strange. Can you please reproduce the issue again on
drm-intel-nightly (latest -nightly should also have the display
corruptions fixed, so good to retest anyway) and attach a new dmesg with
drm.debug=0xe.

Meanwhile I'll try to come up with new theories and ideas.

Thanks, Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/