mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Mario Limonciello <mario.limonciello@amd.com>
To: Dhananjay Ugwekar <dhananjay.ugwekar@amd.com>
Cc: linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org,
	gautham.shenoy@amd.com, rafael@kernel.org,
	viresh.kumar@linaro.org
Subject: Re: [PATCH 03/12] cpufreq/amd-pstate: Modify the min_perf calculation in adjust_perf callback
Date: Wed, 5 Feb 2025 11:45:30 -0600	[thread overview]
Message-ID: <bbbc09e9-4719-4a8a-b368-1b5aa67b6e76@amd.com> (raw)
In-Reply-To: <20250205112523.201101-4-dhananjay.ugwekar@amd.com>

On 2/5/2025 05:25, Dhananjay Ugwekar wrote:
> Instead of setting a fixed floor at lowest_nonlinear_perf, use the
> min_limit_perf value, so that it gives the user the freedom to lower the
> floor further.
> 
> There are two minimum frequency/perf limits that we need to consider in
> the adjust_perf callback. One provided by schedutil i.e. the sg_cpu->bw_min
> value passed in _min_perf arg, another is the effective value of
> min_freq_qos request that is updated in cpudata->min_limit_perf. Modify the
> code to use the bigger of these two values.
> 
> Signed-off-by: Dhananjay Ugwekar <dhananjay.ugwekar@amd.com>

Reviewed-by: Mario Limonciello <mario.limonciello@amd.com>

I'll queue this for 6.15.

> ---
>   drivers/cpufreq/amd-pstate.c | 12 ++++++------
>   1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/cpufreq/amd-pstate.c b/drivers/cpufreq/amd-pstate.c
> index 9dc3933bc326..a23fb78a442b 100644
> --- a/drivers/cpufreq/amd-pstate.c
> +++ b/drivers/cpufreq/amd-pstate.c
> @@ -672,7 +672,7 @@ static void amd_pstate_adjust_perf(unsigned int cpu,
>   				   unsigned long capacity)
>   {
>   	unsigned long max_perf, min_perf, des_perf,
> -		      cap_perf, lowest_nonlinear_perf;
> +		      cap_perf, min_limit_perf;
>   	struct cpufreq_policy *policy = cpufreq_cpu_get(cpu);
>   	struct amd_cpudata *cpudata;
>   
> @@ -684,20 +684,20 @@ static void amd_pstate_adjust_perf(unsigned int cpu,
>   	if (policy->min != cpudata->min_limit_freq || policy->max != cpudata->max_limit_freq)
>   		amd_pstate_update_min_max_limit(policy);
>   
> -
>   	cap_perf = READ_ONCE(cpudata->highest_perf);
> -	lowest_nonlinear_perf = READ_ONCE(cpudata->lowest_nonlinear_perf);
> +	min_limit_perf = READ_ONCE(cpudata->min_limit_perf);
>   
>   	des_perf = cap_perf;
>   	if (target_perf < capacity)
>   		des_perf = DIV_ROUND_UP(cap_perf * target_perf, capacity);
>   
> -	min_perf = READ_ONCE(cpudata->lowest_perf);
>   	if (_min_perf < capacity)
>   		min_perf = DIV_ROUND_UP(cap_perf * _min_perf, capacity);
> +	else
> +		min_perf = cap_perf;
>   
> -	if (min_perf < lowest_nonlinear_perf)
> -		min_perf = lowest_nonlinear_perf;
> +	if (min_perf < min_limit_perf)
> +		min_perf = min_limit_perf;
>   
>   	max_perf = cpudata->max_limit_perf;
>   	if (max_perf < min_perf)


  reply	other threads:[~2025-02-05 17:51 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-05 11:25 [PATCH 00/12] cpufreq/amd-pstate: Fixes and optimizations Dhananjay Ugwekar
2025-02-05 11:25 ` [PATCH 01/12] cpufreq/amd-pstate: Remove the goto label in amd_pstate_update_limits Dhananjay Ugwekar
2025-02-05 17:40   ` Mario Limonciello
2025-02-10  5:12   ` Gautham R. Shenoy
2025-02-05 11:25 ` [PATCH 02/12] cpufreq/amd-pstate: Fix max_perf updation with schedutil Dhananjay Ugwekar
2025-02-05 17:40   ` Mario Limonciello
2025-02-10  5:13   ` Gautham R. Shenoy
2025-02-05 11:25 ` [PATCH 03/12] cpufreq/amd-pstate: Modify the min_perf calculation in adjust_perf callback Dhananjay Ugwekar
2025-02-05 17:45   ` Mario Limonciello [this message]
2025-02-10  9:45   ` Gautham R. Shenoy
2025-02-05 11:25 ` [PATCH 04/12] cpufreq/amd-pstate: Remove the redundant des_perf clamping in adjust_perf Dhananjay Ugwekar
2025-02-05 17:45   ` Mario Limonciello
2025-02-10  9:46   ` Gautham R. Shenoy
2025-02-05 11:25 ` [PATCH 05/12] cpufreq/amd-pstate: Pass min/max_limit_perf as min/max_perf to amd_pstate_update Dhananjay Ugwekar
2025-02-05 17:45   ` Mario Limonciello
2025-02-10  9:47   ` Gautham R. Shenoy
2025-02-05 11:25 ` [PATCH 06/12] cpufreq/amd-pstate: Convert all perf values to u8 Dhananjay Ugwekar
2025-02-05 17:46   ` Mario Limonciello
2025-02-10  9:48   ` Gautham R. Shenoy
2025-02-05 11:25 ` [PATCH 07/12] cpufreq/amd-pstate: Modularize perf<->freq conversion Dhananjay Ugwekar
2025-02-05 17:46   ` Mario Limonciello
2025-02-10  9:51   ` Gautham R. Shenoy
2025-02-05 11:25 ` [PATCH 08/12] cpufreq/amd-pstate: Remove the unnecessary cpufreq_update_policy call Dhananjay Ugwekar
2025-02-05 17:46   ` Mario Limonciello
2025-02-10  9:52   ` Gautham R. Shenoy
2025-02-05 11:25 ` [PATCH 09/12] cpufreq/amd-pstate: Fix cpufreq_policy ref counting Dhananjay Ugwekar
2025-02-05 17:48   ` Mario Limonciello
2025-02-10 10:52   ` Gautham R. Shenoy
2025-02-05 11:25 ` [PATCH 10/12] cpufreq/amd-pstate: Add missing NULL ptr check in amd_pstate_update Dhananjay Ugwekar
2025-02-05 17:48   ` Mario Limonciello
2025-02-10 10:58   ` Gautham R. Shenoy
2025-02-05 11:25 ` [PATCH 11/12] cpufreq/amd-pstate: Use scope based cleanup for cpufreq_policy refs Dhananjay Ugwekar
2025-02-05 17:50   ` Mario Limonciello
2025-02-10 11:11   ` Gautham R. Shenoy
2025-02-05 11:25 ` [PATCH 12/12] cpufreq/amd-pstate: Remove the unncecessary driver_lock in amd_pstate_update_limits Dhananjay Ugwekar
2025-02-05 17:50   ` Mario Limonciello
2025-02-10 11:12   ` Gautham R. Shenoy

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=bbbc09e9-4719-4a8a-b368-1b5aa67b6e76@amd.com \
    --to=mario.limonciello@amd.com \
    --cc=dhananjay.ugwekar@amd.com \
    --cc=gautham.shenoy@amd.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=rafael@kernel.org \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®