[dpdk-dev] [PATCH v2 1/1] test/power: fix CPU frequency check
David Hunt
david.hunt at intel.com
Wed Jul 14 14:23:11 CEST 2021
Hi Richael,
On 14/7/2021 11:44 AM, Richael Zhuang wrote:
> For acpi_cpufreq and cppc_cpufreq, both cpuinfo_cur_freq and
> scaling_cur_freq exist. For pstate, only scaling_cur_freq exists.
> And value in scaling_cur_freq and cpuinfo_cur_freq may not be the
> same. For acpi_cpufreq and cppc_cpufreq, we should check
> cpuinfo_cur_freq but not scaling_cur_freq. So here change the
> check sequence to make sure it works for all cpufreq drivers.
> Besides, add rounding for pstate driver.
>
> Fixes: ff6dfb8e492f ("test/power: fix CPU frequency check")
> Cc: david.hunt at intel.com
> Cc: stable at dpdk.org
>
> Signed-off-by: Richael Zhuang <richael.zhuang at arm.com>
> ---
> app/test/test_power_cpufreq.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/app/test/test_power_cpufreq.c b/app/test/test_power_cpufreq.c
> index b8fc53925c..1a9549527e 100644
> --- a/app/test/test_power_cpufreq.c
> +++ b/app/test/test_power_cpufreq.c
> @@ -62,13 +62,13 @@ check_cur_freq(unsigned int lcore_id, uint32_t idx, bool turbo)
> int i;
>
> if (snprintf(fullpath, sizeof(fullpath),
> - TEST_POWER_SYSFILE_SCALING_FREQ, lcore_id) < 0) {
> + TEST_POWER_SYSFILE_CPUINFO_FREQ, lcore_id) < 0) {
> return 0;
> }
> f = fopen(fullpath, "r");
> if (f == NULL) {
> if (snprintf(fullpath, sizeof(fullpath),
> - TEST_POWER_SYSFILE_CPUINFO_FREQ, lcore_id) < 0) {
> + TEST_POWER_SYSFILE_SCALING_FREQ, lcore_id) < 0) {
> return 0;
> }
> f = fopen(fullpath, "r");
> @@ -85,7 +85,7 @@ check_cur_freq(unsigned int lcore_id, uint32_t idx, bool turbo)
> freq_conv = cur_freq;
>
> env = rte_power_get_env();
> - if (env == PM_ENV_CPPC_CPUFREQ) {
> + if (env == PM_ENV_CPPC_CPUFREQ || env == PM_ENV_PSTATE_CPUFREQ) {
> /* convert the frequency to nearest 100000 value
> * Ex: if cur_freq=1396789 then freq_conv=1400000
> * Ex: if cur_freq=800030 then freq_conv=800000
Looks good now. I ran the power_cpufreq_autotest test on both the
acpi-cpufreq and pstate drivers, and both passed.
Acked-by: David Hunt <david.hunt at intel.com>
More information about the dev
mailing list