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

From: Viresh Kumar
Date: Mon Sep 14 2015 - 06:28:19 EST


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@xxxxxxxxxxxxxxxxxx>
> ---
> 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@xxxxxxxxxx>
--
viresh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/