[Intel-gfx] [PATCH 2/6] drm/i915: Decouple hang detection from hangcheck period

2016-11-18 Thread Mika Kuoppala
Hangcheck state accumulation has gained more steps along the years, like head movement and more recently the subunit inactivity check. As the subunit sampling is only done if the previous state check showed inactivity, we have added more stages (and time) to reach a hang verdict. Asymmetric engine

Re: [Intel-gfx] [PATCH 2/6] drm/i915: Decouple hang detection from hangcheck period

2016-11-16 Thread Chris Wilson
On Wed, Nov 16, 2016 at 05:20:30PM +0200, Mika Kuoppala wrote: > - ring_hung = engine->hangcheck.score >= HANGCHECK_SCORE_RING_HUNG; > - if (engine->hangcheck.seqno != intel_engine_get_seqno(engine)) > + ring_hung = engine->hangcheck.stall; > + if (engine->hangcheck.seqno != intel_e

[Intel-gfx] [PATCH 2/6] drm/i915: Decouple hang detection from hangcheck period

2016-11-16 Thread Mika Kuoppala
Hangcheck state accumulation has gained more steps along the years, like head movement and more recently the subunit inactivity check. As the subunit sampling is only done if the previous state check showed inactivity, we have added more stages (and time) to reach a hang verdict. Asymmetric engine

Re: [Intel-gfx] [PATCH 2/6] drm/i915: Decouple hang detection from hangcheck period

2016-11-16 Thread Chris Wilson
On Tue, Nov 15, 2016 at 04:36:32PM +0200, Mika Kuoppala wrote: > +static bool > +hangcheck_engine_stall(struct intel_engine_cs *engine, > +struct intel_engine_hangcheck *hc) > +{ > + const unsigned long last_action = engine->hangcheck.action_timestamp; > > - me

Re: [Intel-gfx] [PATCH 2/6] drm/i915: Decouple hang detection from hangcheck period

2016-11-15 Thread Chris Wilson
On Tue, Nov 15, 2016 at 07:23:26PM +0200, Mika Kuoppala wrote: > Chris Wilson writes: > > > On Tue, Nov 15, 2016 at 04:36:32PM +0200, Mika Kuoppala wrote: > >> +static bool > >> +hangcheck_engine_stall(struct intel_engine_cs *engine, > >> + struct intel_engine_hangcheck *hc) > >>

Re: [Intel-gfx] [PATCH 2/6] drm/i915: Decouple hang detection from hangcheck period

2016-11-15 Thread Mika Kuoppala
Chris Wilson writes: > On Tue, Nov 15, 2016 at 04:36:32PM +0200, Mika Kuoppala wrote: >> +static bool >> +hangcheck_engine_stall(struct intel_engine_cs *engine, >> + struct intel_engine_hangcheck *hc) >> +{ >> +const unsigned long last_action = engine->hangcheck.action_times

Re: [Intel-gfx] [PATCH 2/6] drm/i915: Decouple hang detection from hangcheck period

2016-11-15 Thread Chris Wilson
On Tue, Nov 15, 2016 at 04:36:32PM +0200, Mika Kuoppala wrote: > +static bool > +hangcheck_engine_stall(struct intel_engine_cs *engine, > +struct intel_engine_hangcheck *hc) > +{ > + const unsigned long last_action = engine->hangcheck.action_timestamp; > > - me

[Intel-gfx] [PATCH 2/6] drm/i915: Decouple hang detection from hangcheck period

2016-11-15 Thread Mika Kuoppala
Hangcheck state accumulation has gained more steps along the years, like head movement and more recently the subunit inactivity check. As the subunit sampling is only done if the previous state check showed inactivity, we have added more stages (and time) to reach a hang verdict. Asymmetric engine