[Intel-gfx] [PATCH 1/2] igt/pm_rps: current freq < user specified min is not a fail (v2)

Imre Deak imre.deak at intel.com
Tue Dec 1 05:51:46 PST 2015


On ma, 2015-11-30 at 16:23 -0800, Bob Paauwe wrote:
> Since commit
> 
>   commit aed242ff7ebb697e4dff912bd4dc7ec7192f7581
>   Author: Chris Wilson <chris at chris-wilson.co.uk>
>   Date:   Wed Mar 18 09:48:21 2015 +0000
> 
>       drm/i915: Relax RPS contraints to allows setting minfreq on
> idle
> 
> it is now possible that the current frequency will drop be the user
> specified minimum frequency to the "idle" or RPn frequency. Update
> the
>  pm_rps tests to reflect that droping below the user specified
> minimum
> is no longer considered a failure.
> 
> v2: Add check RPn <= current freq. (Me)
> Signed-off-by: Bob Paauwe <bob.j.paauwe at intel.com>
> ---
>  tests/pm_rps.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/tests/pm_rps.c b/tests/pm_rps.c
> index 74f08f4..f919625 100644
> --- a/tests/pm_rps.c
> +++ b/tests/pm_rps.c
> @@ -146,7 +146,7 @@ static void checkit(const int *freqs)
>  {
>  	igt_assert_lte(freqs[MIN], freqs[MAX]);
>  	igt_assert_lte(freqs[CUR], freqs[MAX]);
> -	igt_assert_lte(freqs[MIN], freqs[CUR]);
> +	igt_assert_lte(freqs[RPn], freqs[CUR]);
>  	igt_assert_lte(freqs[RPn], freqs[MIN]);
>  	igt_assert_lte(freqs[MAX], freqs[RP0]);
>  	igt_assert_lte(freqs[RP1], freqs[RP0]);
> @@ -472,14 +472,14 @@ static void idle_check(void)
>  		read_freqs(freqs);
>  		dump(freqs);
>  		checkit(freqs);
> -		if (freqs[CUR] == freqs[MIN])
> +		if (freqs[CUR] <= freqs[MIN])
>  			break;
>  		usleep(1000 * IDLE_WAIT_TIMESTEP_MSEC);
>  		wait += IDLE_WAIT_TIMESTEP_MSEC;
>  	} while (wait < IDLE_WAIT_TIMEOUT_MSEC);
>  
> -	igt_assert_eq(freqs[CUR], freqs[MIN]);
> -	igt_debug("Required %d msec to reach cur=min\n", wait);
> +	igt_assert_lte(freqs[CUR], freqs[MIN]);

No, we need to check if we reach the idle frequency in all scenarios
when the GPU is supposed to be idle. So the CUR-freq<=MIN-freq check is
not enough we need to check for CUR-freq==idle-freq. I'm ok to use RPn
instead of the idle frequency for now.

> +	igt_debug("Required %d msec to reach cur<=min\n", wait);
>  }
>  
>  #define LOADED_WAIT_TIMESTEP_MSEC 100


More information about the Intel-gfx mailing list