From: "Gautham R. Shenoy" <gautham.shenoy@amd.com>
To: Perry Yuan <perry.yuan@amd.com>
Cc: rafael.j.wysocki@intel.com, Mario.Limonciello@amd.com,
viresh.kumar@linaro.org, Ray.Huang@amd.com,
Borislav.Petkov@amd.com, Alexander.Deucher@amd.com,
Xinmei.Huang@amd.com, Xiaojian.Du@amd.com, Li.Meng@amd.com,
linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v7 1/6] cpufreq:amd-pstate: fix the nominal freq value set
Date: Thu, 14 Mar 2024 11:18:59 +0530 [thread overview]
Message-ID: <ZfKPy7hlwiYm++AM@BLR-5CG11610CF.amd.com> (raw)
In-Reply-To: <08ed1f9f76a6a1c401efd8f426bdeb9681c4b4e9.1710323410.git.perry.yuan@amd.com>
Hello Perry,
On Wed, Mar 13, 2024 at 05:59:13PM +0800, Perry Yuan wrote:
> Address an untested error where the nominal_freq was returned in KHz
> instead of the correct MHz units, this oversight led to a wrong
> nominal_freq set and resued, it will cause the max frequency of core to
> be initialized with a wrong frequency value.
As I had mentioned in my review comment to v6 [1], cpudata->max_freq,
cpudata->min_freq, cpudata->lowest_non_linear_freq are all in
khz. With this patch, cpudata->nominal_freq will be in mhz.
As Dhananjay confirmed [2], this patch breaks the reporting in
/sys/devices/system/cpu/cpufreq/policyX/*_freq as some of them will be
reported in mhz while some others in khz which breaks the expectation
that all these sysfs values should be reported in khz.
[cpufreq]# grep . *freq
amd_pstate_lowest_nonlinear_freq:1804000 <----- in khz
amd_pstate_max_freq:3514000 <----- in khz
cpuinfo_max_freq:2151 <----- in mhz
cpuinfo_min_freq:400000 <----- in khz
scaling_cur_freq:2151 <----- in mhz
scaling_max_freq:2151 <----- in mhz
scaling_min_freq:2151 <----- in mhz
[cpufreq]# pwd
/sys/devices/system/cpu/cpu0/cpufreq
What am I missing ?
[1] https://lore.kernel.org/lkml/ZcRvoYZKdUEjBUHp@BLR-5CG11610CF.amd.com/)
[2] https://lore.kernel.org/lkml/1aecf2fc-2ea4-46ec-aaf2-0dbbb11b5f8b@amd.com/
>
> Cc: stable@vger.kernel.org
> Fixes: ec437d71db7 ("cpufreq: amd-pstate: Introduce a new AMD P-State driver to support future processors")
> Reviewed-by: Mario Limonciello <mario.limonciello@amd.com>
> Signed-off-by: Perry Yuan <perry.yuan@amd.com>
--
Thanks and Regards
gautham.
> ---
> drivers/cpufreq/amd-pstate.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/cpufreq/amd-pstate.c b/drivers/cpufreq/amd-pstate.c
> index 2015c9fcc3c9..3faa895b77b7 100644
> --- a/drivers/cpufreq/amd-pstate.c
> +++ b/drivers/cpufreq/amd-pstate.c
> @@ -647,8 +647,7 @@ static int amd_get_nominal_freq(struct amd_cpudata *cpudata)
> if (ret)
> return ret;
>
> - /* Switch to khz */
> - return cppc_perf.nominal_freq * 1000;
> + return cppc_perf.nominal_freq;
> }
>
> static int amd_get_lowest_nonlinear_freq(struct amd_cpudata *cpudata)
> --
> 2.34.1
>
next prev parent reply other threads:[~2024-03-14 5:49 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-13 9:59 [PATCH v7 0/6] AMD Pstate Fixes And Enhancements Perry Yuan
2024-03-13 9:59 ` [PATCH v7 1/6] cpufreq:amd-pstate: fix the nominal freq value set Perry Yuan
2024-03-14 5:48 ` Gautham R. Shenoy [this message]
2024-03-14 6:09 ` Yuan, Perry
2024-03-14 9:32 ` Gautham R. Shenoy
2024-03-14 10:05 ` Yuan, Perry
2024-03-13 9:59 ` [PATCH v7 2/6] cpufreq:amd-pstate: initialize nominal_freq of each cpudata Perry Yuan
2024-03-13 9:59 ` [PATCH v7 3/6] cpufreq:amd-pstate: get pstate transition delay and latency value from ACPI tables Perry Yuan
2024-03-14 6:23 ` Gautham R. Shenoy
2024-03-13 9:59 ` [PATCH v7 4/6] cppc_acpi: print error message if CPPC is unsupported Perry Yuan
2024-03-13 9:59 ` [PATCH v7 5/6] cpufreq:amd-pstate: add quirk for the pstate CPPC capabilities missing Perry Yuan
2024-03-13 9:59 ` [PATCH v7 6/6] cpufreq:amd-pstate: initialize capabilities in amd_pstate_init_perf Perry Yuan
2024-03-14 6:38 ` Gautham R. Shenoy
2024-03-14 8:24 ` Yuan, Perry
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZfKPy7hlwiYm++AM@BLR-5CG11610CF.amd.com \
--to=gautham.shenoy@amd.com \
--cc=Alexander.Deucher@amd.com \
--cc=Borislav.Petkov@amd.com \
--cc=Li.Meng@amd.com \
--cc=Mario.Limonciello@amd.com \
--cc=Ray.Huang@amd.com \
--cc=Xiaojian.Du@amd.com \
--cc=Xinmei.Huang@amd.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=perry.yuan@amd.com \
--cc=rafael.j.wysocki@intel.com \
--cc=viresh.kumar@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.