[Intel-gfx] [PATCH] drm/i915/selftests: Show the full scaling curve on failure
Chris Wilson
chris at chris-wilson.co.uk
Tue Apr 21 14:09:34 UTC 2020
Quoting Mika Kuoppala (2020-04-21 15:00:08)
> Chris Wilson <chris at chris-wilson.co.uk> writes:
>
> > If we detect that the RPS end points do not scale perfectly, take the
> > time to measure all the in between values as well. We are aborting the
> > test, so we might as well spend the available time gathering critical
> > debug information instead.
> >
> > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> > Cc: Mika Kuoppala <mika.kuoppala at linux.intel.com>
> > ---
> > drivers/gpu/drm/i915/gt/selftest_rps.c | 36 ++++++++++++++++++++++++++
> > 1 file changed, 36 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/i915/gt/selftest_rps.c b/drivers/gpu/drm/i915/gt/selftest_rps.c
> > index e0a791eac752..f8c416ab8539 100644
> > --- a/drivers/gpu/drm/i915/gt/selftest_rps.c
> > +++ b/drivers/gpu/drm/i915/gt/selftest_rps.c
> > @@ -484,11 +484,29 @@ int live_rps_frequency_cs(void *arg)
> > if (!scaled_within(max.freq * min.count,
> > min.freq * max.count,
> > 2, 3)) {
> > + int f;
> > +
> > pr_err("%s: CS did not scale with frequency! scaled min:%llu, max:%llu\n",
> > engine->name,
> > max.freq * min.count,
> > min.freq * max.count);
> > show_pcu_config(rps);
> > +
> > + for (f = min.freq + 1; f <= rps->max_freq; f++) {
> > + int act = f;
> > + u64 count;
> > +
> > + count = measure_cs_frequency_at(rps, engine, &act);
> > + if (act < f)
> > + break;
> > +
>
> No gripes but in here I ponder would you like to break after the info.
It just means we've repeated ourselves. So meh, it could be useful it
could be noise. This is just extra info and interesting point is the
curve, so it's not really critical if we skip a repeated line. Or so I
believe.
-Chris
More information about the Intel-gfx
mailing list