On Wed, Jan 08, 2025 at 11:28:47AM +0200, Raag Jadav wrote: > On Thu, Jan 02, 2025 at 04:36:18PM +0530, Raag Jadav wrote: > > Current live_rps_control() implementation errors out on throttling. > > This was done with the assumption that throttling to minimum frequency > > is a catastrophic failure, which is incorrect. Throttling can happen > > due to variety of reasons and often times out of our control. Also, > > the resulting frequency can be at any given point below the maximum > > allowed. Change throttle criteria to reflect this logic and drop the > > error, as it doesn't necessarily mean selftest failure. > > > > Signed-off-by: Raag Jadav <raag.jadav@xxxxxxxxx> > > --- > > Rodrigo, does this look okay? Acked-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> > > Raag > > > drivers/gpu/drm/i915/gt/selftest_rps.c | 11 ++++++----- > > 1 file changed, 6 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/gt/selftest_rps.c b/drivers/gpu/drm/i915/gt/selftest_rps.c > > index dcef8d498919..7aac90c1679e 100644 > > --- a/drivers/gpu/drm/i915/gt/selftest_rps.c > > +++ b/drivers/gpu/drm/i915/gt/selftest_rps.c > > @@ -477,12 +477,13 @@ int live_rps_control(void *arg) > > limit, intel_gpu_freq(rps, limit), > > min, max, ktime_to_ns(min_dt), ktime_to_ns(max_dt)); > > > > - if (limit == rps->min_freq) { > > - pr_err("%s: GPU throttled to minimum!\n", > > - engine->name); > > + if (limit != rps->max_freq) { > > + u32 throttle = intel_uncore_read(gt->uncore, > > + intel_gt_perf_limit_reasons_reg(gt)); > > + > > + pr_warn("%s: GPU throttled with reasons 0x%08x\n", > > + engine->name, throttle & GT0_PERF_LIMIT_REASONS_MASK); > > show_pstate_limits(rps); > > - err = -ENODEV; > > - break; > > } > > > > if (igt_flush_test(gt->i915)) { > > -- > > 2.34.1 > >