Subject: bug#37904: CPU overheating on recent laptops

From: Ludovic Courtès <[email-masked]>
Date: Fri, 25 Oct 2019 22:49:47 +0200

Hi,

Tobias Geerinckx-Rice via Bug reports for GNU Guix <[email-masked]>
skribis:

> Ludovic Courtès 写道：
>> Also, there used to be an “ondemand” governor, which is no longer
>> listed
>> in /sys/devices/system/cpu/cpu?/cpufreq/scaling_available_governors.
>
> For laptops and other battery-powered devices, ‘conservative’ is
> preferred over ‘ondemand’.  It's probably a sane default choice for
> all.

Oh, didn’t know that one.

>> Was it removed or are we just missing a kconfig option?
>
> Strange:
>
>  ~ λ grep CPU_FREQ_GOV …/aux-files/linux-libre/5.3-x86_64.conf
> CONFIG_CPU_FREQ_GOV_ATTR_SET=y
>  CONFIG_CPU_FREQ_GOV_COMMON=y
>  CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
>  CONFIG_CPU_FREQ_GOV_POWERSAVE=y
>  CONFIG_CPU_FREQ_GOV_USERSPACE=y
>  CONFIG_CPU_FREQ_GOV_ONDEMAND=y
>  CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
>  CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y

Weird, I see:

--8<---------------cut here---------------start------------->8---
$ cat /sys/devices/system/cpu/cpu?/cpufreq/scaling_available_governors
performance powersave
performance powersave
performance powersave
performance powersave
$ uname -a
Linux ribbon 5.3.7-gnu #1 SMP 1 x86_64 GNU/Linux
--8<---------------cut here---------------end--------------->8---

Do you see more governors on your side?  How could that be?

> What does cpufreq-info say?

On my laptop (plugged in) I have this:

--8<---------------cut here---------------start------------->8---
$ guix environment --ad-hoc cpufrequtils -- cpufreq-info
cpufrequtils 0.3: cpufreq-info (C) Dominik Brodowski 2004
Report errors and bugs to [email-masked], please.
analyzing CPU 0:
  driver: intel_pstate
  CPUs which need to switch frequency at the same time: 0
  hardware limits: 400 MHz - 3.40 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 400 MHz and 3.40 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 3.37 GHz.
analyzing CPU 1:
  driver: intel_pstate
  CPUs which need to switch frequency at the same time: 1
  hardware limits: 400 MHz - 3.40 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 400 MHz and 3.40 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 3.25 GHz.
analyzing CPU 2:
  driver: intel_pstate
  CPUs which need to switch frequency at the same time: 2
  hardware limits: 400 MHz - 3.40 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 400 MHz and 3.40 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 3.28 GHz.
analyzing CPU 3:
  driver: intel_pstate
  CPUs which need to switch frequency at the same time: 3
  hardware limits: 400 MHz - 3.40 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 400 MHz and 3.40 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 3.31 GHz.
--8<---------------cut here---------------end--------------->8---

Thanks,
Ludo’.