[PATCH v1] drm/i915/selftest: Change throttle criteria for rps
Raag Jadav
raag.jadav at intel.com
Wed Jan 8 09:28:47 UTC 2025
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 at intel.com>
> ---
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
>
More information about the Intel-gfx
mailing list