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? 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 >