[Intel-gfx] [PATCH 2/2] drm/i915/selftest: Fix ktime_get() and h/w access order
Nilawar, Badal
badal.nilawar at intel.com
Wed Mar 1 11:58:29 UTC 2023
LGTM
Reviewed-by: Badal Nilawar <badal.nilawar at intel.com>
On 23-02-2023 15:35, Anshuman Gupta wrote:
> Use ktime_get() after accessing the mmio or any driver resource,
> while using wall time for various calculation that depends on
> the inserted delay in order to account any mmio and resource
> access latency.
>
> Cc: Chris Wilson <chris.p.wilson at intel.com>
> Signed-off-by: Anshuman Gupta <anshuman.gupta at intel.com>
> ---
> drivers/gpu/drm/i915/gt/selftest_rps.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/selftest_rps.c b/drivers/gpu/drm/i915/gt/selftest_rps.c
> index c0cc0dd78c7c..84e77e8dbba1 100644
> --- a/drivers/gpu/drm/i915/gt/selftest_rps.c
> +++ b/drivers/gpu/drm/i915/gt/selftest_rps.c
> @@ -537,8 +537,8 @@ static u64 __measure_frequency(u32 *cntr, int duration_ms)
> {
> u64 dc, dt;
>
> - dt = ktime_get();
> dc = READ_ONCE(*cntr);
> + dt = ktime_get();
> usleep_range(1000 * duration_ms, 2000 * duration_ms);
> dc = READ_ONCE(*cntr) - dc;
> dt = ktime_get() - dt;
> @@ -566,8 +566,8 @@ static u64 __measure_cs_frequency(struct intel_engine_cs *engine,
> {
> u64 dc, dt;
>
> - dt = ktime_get();
> dc = intel_uncore_read_fw(engine->uncore, CS_GPR(0));
> + dt = ktime_get();
> usleep_range(1000 * duration_ms, 2000 * duration_ms);
> dc = intel_uncore_read_fw(engine->uncore, CS_GPR(0)) - dc;
> dt = ktime_get() - dt;
> @@ -1094,8 +1094,8 @@ static u64 __measure_power(int duration_ms)
> {
> u64 dE, dt;
>
> - dt = ktime_get();
> dE = librapl_energy_uJ();
> + dt = ktime_get();
> usleep_range(1000 * duration_ms, 2000 * duration_ms);
> dE = librapl_energy_uJ() - dE;
> dt = ktime_get() - dt;
More information about the Intel-gfx
mailing list