[dpdk-dev] [PATCH v2 3/3] power: do not skip saving original pstate governor
Burakov, Anatoly
anatoly.burakov at intel.com
Tue Mar 30 18:51:58 CEST 2021
On 30-Mar-21 3:25 PM, Anatoly Burakov wrote:
> Currently, when we set the pstate governor to "performance", we check if
> it is already set to this value, and if it is, we skip setting it.
>
> However, we never save this value anywhere, so that next time we come
> back and request the governor to be set to its original value, the
> original value is empty.
>
> Fix it by saving the original pstate governor first. While we're at it,
> replace `strlcpy` with `rte_strscpy`.
>
> Signed-off-by: Anatoly Burakov <anatoly.burakov at intel.com>
> ---
> lib/librte_power/power_pstate_cpufreq.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/lib/librte_power/power_pstate_cpufreq.c b/lib/librte_power/power_pstate_cpufreq.c
> index 7ea1bf677a..db7856dadc 100644
> --- a/lib/librte_power/power_pstate_cpufreq.c
> +++ b/lib/librte_power/power_pstate_cpufreq.c
> @@ -450,6 +450,9 @@ power_set_governor_performance(struct pstate_power_info *pi)
> ret = read_core_sysfs_s(f_governor, buf, sizeof(buf));
> FOPS_OR_ERR_GOTO(ret, out);
>
> + /* Save the original governor */
> + rte_strscpy(pi->governor_ori, buf, sizeof(pi->governor_ori));
> +
> /* Check if current governor is performance */
> if (strncmp(buf, POWER_GOVERNOR_PERF,
> sizeof(POWER_GOVERNOR_PERF)) == 0) {
> @@ -458,8 +461,6 @@ power_set_governor_performance(struct pstate_power_info *pi)
> "already performance\n", pi->lcore_id);
> goto out;
> }
> - /* Save the original governor */
> - strlcpy(pi->governor_ori, buf, sizeof(pi->governor_ori));
>
> /* Write 'performance' to the governor */
> ret = write_core_sysfs_s(f_governor, POWER_GOVERNOR_PERF);
>
Fixes: e6c6dc0f96c8 ("power: add p-state driver compatibility")
--
Thanks,
Anatoly
More information about the dev
mailing list