[Intel-gfx] [PATCH] drm/i915/selftests: Touch the NMI watchdog inside a GTT pass

Chris Wilson chris at chris-wilson.co.uk
Tue Jul 3 11:07:01 UTC 2018


Quoting Tvrtko Ursulin (2018-07-03 12:00:13)
> 
> On 03/07/2018 11:25, Chris Wilson wrote:
> > We want to do a complete pass before checking the timeout, but just in
> > case the pass is quite slow, touch the NMI watchdog to prevent a
> > false positive.
> > 
> > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> > Cc: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> > ---
> >   drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 8 ++++++++
> >   1 file changed, 8 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> > index eefcf7b84054..71c0654b4b4d 100644
> > --- a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> > +++ b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
> > @@ -23,6 +23,7 @@
> >    */
> >   
> >   #include <linux/list_sort.h>
> > +#include <linux/nmi.h>
> >   #include <linux/prime_numbers.h>
> >   
> >   #include "../i915_selftest.h"
> > @@ -686,6 +687,13 @@ static int pot_hole(struct drm_i915_private *i915,
> >                       i915_vma_unpin(vma);
> >                       err = i915_vma_unbind(vma);
> >                       GEM_BUG_ON(err);
> > +
> > +                     /*
> > +                      * Do a complete pass before timing out, but just
> > +                      * in case we are running too slow, ping the NMI
> > +                      * watchdog.
> > +                      */
> > +                     touch_nmi_watchdog();
> >               }
> >   
> >               if (igt_timeout(end_time,
> > 
> 
> Why only in pot_hole, is this the slowest test?

It's the only test of this style where we don't have the igt_timeout
(cond_resched) inside the innermost loop.
-Chris


More information about the Intel-gfx mailing list