[igt-dev] [Intel-gfx] [PATCH i-g-t] i915/gem_ringfill: Do a basic pass over all engines simultaneously

Petri Latvala petri.latvala at intel.com
Mon May 11 10:03:12 UTC 2020


On Mon, May 11, 2020 at 10:53:58AM +0100, Chris Wilson wrote:
> Quoting Petri Latvala (2020-05-11 10:49:10)
> > On Mon, May 11, 2020 at 10:39:24AM +0100, Chris Wilson wrote:
> > > Change the basic pre-mergetest to do a single pass over all engines
> > > simultaneously. This should take no longer than checking a single
> > > engine, while providing just the right amount of stress regardless of
> > > machine size.
> > > 
> > > v2: Move around the quiescence and requires to avoid calling them from
> > > the children.
> > > 
> > > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> > > Cc: Petri Latvala <petri.latvala at intel.com>
> > > ---
> > >  tests/i915/gem_ringfill.c             | 31 ++++++++++++++++++++-------
> > >  tests/intel-ci/fast-feedback.testlist |  2 +-
> > >  2 files changed, 24 insertions(+), 9 deletions(-)
> > > 
> > > diff --git a/tests/i915/gem_ringfill.c b/tests/i915/gem_ringfill.c
> > > index a2157bd6f..05b997ed4 100644
> > > --- a/tests/i915/gem_ringfill.c
> > > +++ b/tests/i915/gem_ringfill.c
> > > @@ -178,13 +178,11 @@ static void run_test(int fd, unsigned ring, unsigned flags, unsigned timeout)
> > >       struct drm_i915_gem_execbuffer2 execbuf;
> > >       igt_hang_t hang;
> > >  
> > > -     gem_require_ring(fd, ring);
> > > -     igt_require(gem_can_store_dword(fd, ring));
> > > -
> > > -     if (flags & (SUSPEND | HIBERNATE))
> > > +     if (flags & (SUSPEND | HIBERNATE)) {
> > >               run_test(fd, ring, 0, 0);
> > > +             gem_quiescent_gpu(fd);
> > > +     }
> > >  
> > > -     gem_quiescent_gpu(fd);
> > >       igt_require(setup_execbuf(fd, &execbuf, obj, reloc, ring) == 0);
> > 
> > What about this one?
> 
> If that fails, I'll accept the punishment of having to debug a
> mysterious segfault. That's a require for v3.10.

It will just assert() out, saying you can't skip in a fork. See the v1
BAT results.

If you add a comment stating that it shouldn't usually fire and having
it in a function sometimes called in a child process is intentional,
Reviewed-by: Petri Latvala <petri.latvala at intel.com>


-- 
Petri Latvala


More information about the igt-dev mailing list