[Intel-gfx] [PATCH 6/8] drm/i915/selftests: Terminate hangcheck sanitycheck forcibly

Chris Wilson chris at chris-wilson.co.uk
Mon Dec 3 12:17:39 UTC 2018


Quoting Mika Kuoppala (2018-12-03 12:09:39)
> Chris Wilson <chris at chris-wilson.co.uk> writes:
> 
> > If all else fails and we are stuck eternally waiting for the undying
> > request, abandon all hope.
> >
> > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> > ---
> >  drivers/gpu/drm/i915/selftests/intel_hangcheck.c | 12 +++++++++---
> >  1 file changed, 9 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/selftests/intel_hangcheck.c b/drivers/gpu/drm/i915/selftests/intel_hangcheck.c
> > index defe671130ab..a48fbe2557ea 100644
> > --- a/drivers/gpu/drm/i915/selftests/intel_hangcheck.c
> > +++ b/drivers/gpu/drm/i915/selftests/intel_hangcheck.c
> > @@ -308,6 +308,7 @@ static int igt_hang_sanitycheck(void *arg)
> >               goto unlock;
> >  
> >       for_each_engine(engine, i915, id) {
> > +             struct igt_wedge_me w;
> >               long timeout;
> >  
> >               if (!intel_engine_can_store_dword(engine))
> > @@ -328,9 +329,14 @@ static int igt_hang_sanitycheck(void *arg)
> >  
> >               i915_request_add(rq);
> >  
> > -             timeout = i915_request_wait(rq,
> > -                                         I915_WAIT_LOCKED,
> > -                                         MAX_SCHEDULE_TIMEOUT);
> > +             timeout = 0;
> > +             igt_wedge_on_timeout(&w, i915, HZ / 10 /* 100ms timeout*/)
> 
> 100ms? We are emitting a hanging batch here, so there is something
> I am missing here.

It's not a hanging batch, anymore due to the terminator applied a couple
of lines above.
-Chris


More information about the Intel-gfx mailing list