[Intel-gfx] [PATCH 2/4] drm/i915: Only slightly increment hangcheck score if we succesfully kick a ring

Daniel Vetter daniel at ffwll.ch
Tue Jun 11 16:05:41 CEST 2013


On Tue, Jun 11, 2013 at 02:40:19PM +0100, Chris Wilson wrote:
> On Tue, Jun 11, 2013 at 11:45:00AM +0200, Daniel Vetter wrote:
> > On Mon, Jun 10, 2013 at 11:20:20AM +0100, Chris Wilson wrote:
> > > +		if (ring->hangcheck.seqno == seqno) {
> > > +			if (ring_idle(ring, seqno)) {
> > > +				if (waitqueue_active(&ring->irq_queue)) {
> > > +					/* Issue a wake-up to catch stuck h/w. */
> > > +					DRM_ERROR("Hangcheck timer elapsed... %s idle\n",
> > > +						  ring->name);
> > > +					wake_up_all(&ring->irq_queue);
> > > +					ring->hangcheck.score += HUNG;
> > 
> > Not sure whether we want to hit missed interrupts this badly, it was
> > rather common a while back ;-) But we can fine-tune this easily now, so
> > now reservations for merging from my side.
> 
> Not sure what you mean here. The check is fairly easy and has gotten us
> out of many a hole before, and makes for a good defense. So how would
> you want to fine tune it?

Something like the MI_WAIT hangcheck score, but like I've said as long as
we don't have a real-world bug report (some poor guy disabled semaphores
maybe due to the snb issue?) not worth bothering at all.

I've just thought that if we're unlucky and miss the interrupt a few times
in a row we don't want to accidentally declare the gpu dead.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch



More information about the Intel-gfx mailing list