diff mbox

[v2] cpufreq : powernv: Report Pmax throttling if capped below nominal frequency

Message ID 1442219507-6499-1-git-send-email-shilpa.bhat@linux.vnet.ibm.com (mailing list archive)
State Accepted, archived
Delegated to: Rafael Wysocki
Headers show

Commit Message

Shilpasri G Bhat Sept. 14, 2015, 8:31 a.m. UTC
Log a 'critical' message if the max frequency is reduced below nominal
frequency. We already log 'info' message if the max frequency is
capped below turbo frequency. CPU should guarantee atleast nominal
frequency, but not turbo frequency in all system configurations and
environments. So report the pmax throttling with severity when Pmax is
dipped below nominal frequency.

Signed-off-by: Shilpasri G Bhat <shilpa.bhat@linux.vnet.ibm.com>
---
Changes from v1:
- Modified the printk messages as per Viresh's suggestion.

 drivers/cpufreq/powernv-cpufreq.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

Comments

Viresh Kumar Sept. 14, 2015, 10:28 a.m. UTC | #1
On 14-09-15, 14:01, Shilpasri G Bhat wrote:
> Log a 'critical' message if the max frequency is reduced below nominal
> frequency. We already log 'info' message if the max frequency is
> capped below turbo frequency. CPU should guarantee atleast nominal
> frequency, but not turbo frequency in all system configurations and
> environments. So report the pmax throttling with severity when Pmax is
> dipped below nominal frequency.
> 
> Signed-off-by: Shilpasri G Bhat <shilpa.bhat@linux.vnet.ibm.com>
> ---
> Changes from v1:
> - Modified the printk messages as per Viresh's suggestion.
> 
>  drivers/cpufreq/powernv-cpufreq.c | 10 ++++++++--
>  1 file changed, 8 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/cpufreq/powernv-cpufreq.c b/drivers/cpufreq/powernv-cpufreq.c
> index 64994e1..cb50138 100644
> --- a/drivers/cpufreq/powernv-cpufreq.c
> +++ b/drivers/cpufreq/powernv-cpufreq.c
> @@ -327,8 +327,14 @@ static void powernv_cpufreq_throttle_check(void *data)
>  		if (chips[i].throttled)
>  			goto next;
>  		chips[i].throttled = true;
> -		pr_info("CPU %d on Chip %u has Pmax reduced to %d\n", cpu,
> -			chips[i].id, pmsr_pmax);
> +		if (pmsr_pmax < powernv_pstate_info.nominal)
> +			pr_crit("CPU %d on Chip %u has Pmax reduced below nominal frequency (%d < %d)\n",
> +				cpu, chips[i].id, pmsr_pmax,
> +				powernv_pstate_info.nominal);
> +		else
> +			pr_info("CPU %d on Chip %u has Pmax reduced below turbo frequency (%d < %d)\n",
> +				cpu, chips[i].id, pmsr_pmax,
> +				powernv_pstate_info.max);
>  	} else if (chips[i].throttled) {
>  		chips[i].throttled = false;
>  		pr_info("CPU %d on Chip %u has Pmax restored to %d\n", cpu,

Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Rafael J. Wysocki Oct. 5, 2015, 8:50 p.m. UTC | #2
On Monday, September 14, 2015 03:58:09 PM Viresh Kumar wrote:
> On 14-09-15, 14:01, Shilpasri G Bhat wrote:
> > Log a 'critical' message if the max frequency is reduced below nominal
> > frequency. We already log 'info' message if the max frequency is
> > capped below turbo frequency. CPU should guarantee atleast nominal
> > frequency, but not turbo frequency in all system configurations and
> > environments. So report the pmax throttling with severity when Pmax is
> > dipped below nominal frequency.
> > 
> > Signed-off-by: Shilpasri G Bhat <shilpa.bhat@linux.vnet.ibm.com>
> > ---
> > Changes from v1:
> > - Modified the printk messages as per Viresh's suggestion.
> > 
> >  drivers/cpufreq/powernv-cpufreq.c | 10 ++++++++--
> >  1 file changed, 8 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/cpufreq/powernv-cpufreq.c b/drivers/cpufreq/powernv-cpufreq.c
> > index 64994e1..cb50138 100644
> > --- a/drivers/cpufreq/powernv-cpufreq.c
> > +++ b/drivers/cpufreq/powernv-cpufreq.c
> > @@ -327,8 +327,14 @@ static void powernv_cpufreq_throttle_check(void *data)
> >  		if (chips[i].throttled)
> >  			goto next;
> >  		chips[i].throttled = true;
> > -		pr_info("CPU %d on Chip %u has Pmax reduced to %d\n", cpu,
> > -			chips[i].id, pmsr_pmax);
> > +		if (pmsr_pmax < powernv_pstate_info.nominal)
> > +			pr_crit("CPU %d on Chip %u has Pmax reduced below nominal frequency (%d < %d)\n",
> > +				cpu, chips[i].id, pmsr_pmax,
> > +				powernv_pstate_info.nominal);
> > +		else
> > +			pr_info("CPU %d on Chip %u has Pmax reduced below turbo frequency (%d < %d)\n",
> > +				cpu, chips[i].id, pmsr_pmax,
> > +				powernv_pstate_info.max);
> >  	} else if (chips[i].throttled) {
> >  		chips[i].throttled = false;
> >  		pr_info("CPU %d on Chip %u has Pmax restored to %d\n", cpu,
> 
> Acked-by: Viresh Kumar <viresh.kumar@linaro.org>

Applied, thanks!

Rafael

--
To unsubscribe from this list: send the line "unsubscribe linux-pm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/cpufreq/powernv-cpufreq.c b/drivers/cpufreq/powernv-cpufreq.c
index 64994e1..cb50138 100644
--- a/drivers/cpufreq/powernv-cpufreq.c
+++ b/drivers/cpufreq/powernv-cpufreq.c
@@ -327,8 +327,14 @@  static void powernv_cpufreq_throttle_check(void *data)
 		if (chips[i].throttled)
 			goto next;
 		chips[i].throttled = true;
-		pr_info("CPU %d on Chip %u has Pmax reduced to %d\n", cpu,
-			chips[i].id, pmsr_pmax);
+		if (pmsr_pmax < powernv_pstate_info.nominal)
+			pr_crit("CPU %d on Chip %u has Pmax reduced below nominal frequency (%d < %d)\n",
+				cpu, chips[i].id, pmsr_pmax,
+				powernv_pstate_info.nominal);
+		else
+			pr_info("CPU %d on Chip %u has Pmax reduced below turbo frequency (%d < %d)\n",
+				cpu, chips[i].id, pmsr_pmax,
+				powernv_pstate_info.max);
 	} else if (chips[i].throttled) {
 		chips[i].throttled = false;
 		pr_info("CPU %d on Chip %u has Pmax restored to %d\n", cpu,