[Intel-gfx] [PATCH] drm/i915: kicking rings considered harmful

Ben Widawsky ben at bwidawsk.net
Tue Sep 27 18:46:14 CEST 2011


On Tue, 27 Sep 2011 12:03:22 +0200
Daniel Vetter <daniel at ffwll.ch> wrote:

> On Mon, Sep 26, 2011 at 10:22:01PM -0700, Ben Widawsky wrote:
> > On Mon, 26 Sep 2011 19:59:50 +0200
> > Daniel Vetter <daniel.vetter at ffwll.ch> wrote:
> > > diff --git a/drivers/gpu/drm/i915/i915_irq.c
> > > b/drivers/gpu/drm/i915/i915_irq.c index da5d607..09c11e4 100644
> > > --- a/drivers/gpu/drm/i915/i915_irq.c
> > > +++ b/drivers/gpu/drm/i915/i915_irq.c
> > > @@ -1694,7 +1694,7 @@ void i915_hangcheck_elapsed(unsigned long data)
> > >  		if (dev_priv->hangcheck_count++ > 1) {
> > >  			DRM_ERROR("Hangcheck timer elapsed... GPU
> > > hung\n"); 
> > > -			if (!IS_GEN2(dev)) {
> > > +			if (!IS_GEN2(dev) && i915_try_reset) {
> > >  				/* Is the chip hanging on a
> > > WAIT_FOR_EVENT?
> > >  				 * If so we can simply poke the
> > > RB_WAIT bit
> > >  				 * and break the hang. This should
> > > work on
> > 
> > I think you should also be able to accomplish the same thing
> > with enable_hangcheck param. I had the same problem with the
> > debugger :)
> 
> I agree. Iirc you have some patches floating in that area to make the
> hangcheck a bit more robust. Can you maybe add this to that series and
> (re-)submit?
> 
> Cheers, Daniel

While 9/10 times daniel > ben, I'm playing my 10% card here and
suggesting that mixing the reset variable and ring kick is not the right
way to go about this.

However I will resubmit my series based on other feedback, and if Chris
or Keith chime in and say I'm this isn't my 1/10, I'll add this too :)

Ben



More information about the Intel-gfx mailing list