Since my laptop (an Acer Aspire 5750G running a Gentoo Linux with a not-quite-up-to-date kernel 2.6.39-r3 (a weird wLan hardware makes the update difficult)) tends to run rather hot I am trying to control the situation by employing the service cpufreqd. cpufrequtils are present and active. acpi -t returns nothing. However, lm-sensors are installed and look happy:

Ulyss etc # sensors
Adapter: ISA adapter
Core 0:       +64.0 C  (high = +86.0 C, crit = +100.0 C)
Adapter: ISA adapter
Core 1:       +64.0 C  (high = +86.0 C, crit = +100.0 C)

sensors -u yields

Ulyss etc # sensors -u
Adapter: ISA adapter
Core 0:
  temp1_input: 63.000
  temp1_max: 86.000
  temp1_crit: 100.000
  temp1_crit_alarm: 0.000

Adapter: ISA adapter
Core 1:
  temp1_input: 63.000
  temp1_max: 86.000
  temp1_crit: 100.000
  temp1_crit_alarm: 0.000

Reading several sources on the net and last not least

man cpufreqd.conf

I created /etc/sensors.d/cores.inf

chip "coretemp-isa-0000"
  label temp1 "Core 0"

chip "coretemp-isa-0002"
  label temp1 "Core 1"

and in /etc/cpufreqd.conf modified the general block into

  verbosity=7 # Was at 4
  enable_remote=1 # Was commented out
  remote_group=root # Was commented out

and activated


and defined

name=CPU Too Hot
profile=Performance Low

All this done I checked that all sensors read more then 60 degree C, restarted cpufreqd and checked

Ulyss etc # cpufreq-info -p
2001000 2001000 performance

which still may be correct due to the possible fact that other rules are stronger (btw: Is there some way to introduce weights? Maybe by repeating some lines in the rule?).

So I try to get some information calling cpufreqd directly in its most verbose mode:

cpufreqd -V7

which yields no output even when specifiying -f /etc/cpufreqd.conf as well.

I have a hunch that there may be some trouble in lacking modules. Hence:

Ulyss sensors.d # lsmod
Module                  Size  Used by
fuse                   56971  1 
cpufreq_ondemand        5203  0 
nvidia              12290458  0 
tg3                   104688  0 
wl                   2530575  0 
uvcvideo               52523  0 
videodev               61049  1 uvcvideo
v4l2_compat_ioctl32     7103  1 videodev

Another hunch calls for kernel options

--- ACPI (Advanced Configuration and Power Interface) Support
  [*]   Deprecated /proc/acpi files
  [ ]   Deprecated power /proc/acpi directories
   M   ACPI 4.0 power meter
        EC read/write access through /sys/kernel/debug/ec
  [*]   Deprecated /proc/acpi/event support
   *    AC Adapter
   *    Battery
  -*-   Button
  -*-   Video
   *    Fan
  [*]   Dock
  *     Processor
        Processor Aggregator
  *     Thermal Zone
  -*-   NUMA support
  [ ]   Debug Statements
   M    PCI slot detection driver
  -*-   Container and Module Devices (EXPERIMENTAL)
   M    Smart Battery System
        Hardware Error Device
  [ ]   ACPI Platform Error Interface (APEI)

[*] CPU Frequency scaling
  [ ]   Enable CPUfreq debugging
        CPU frequency translation statistics
        Default CPUFreq governor (userspace)  --->
   *    'performance' governor
   *    'powersave' governor
  -*-   'userspace' governor for userspace frequency scaling
   M    'ondemand' cpufreq policy governor
   *    'conservative' cpufreq governor
  *** CPUFreq processor drivers ***
        Processor Clocking Control interface driver
   *    ACPI Processor P-States driver
        AMD Opteron/Athlon64 PowerNow!
        Intel Enhanced SpeedStep (deprecated)
        Intel Pentium 4 clock modulation
  *** shared options ***

So far the situation. Now my questions: Could any of you shed some light on why the cpufreq fails to change to a lower frequency? Or, just as interesting, how I could debug the /etc/cpufreqd.conf file?


I was having the same issues. I too have a laptop that runs too hot.

I didn't think it was doing anything, but I enabled cpufreqd -V7 and saw the messages being written to /var/log/messages.

I disabled some of the unused rules, and just used 3 'too hot' stanzas.

name=temp high
profile=Powersave Low

name=temp med
profile=Powersave High

name=temp low
profile=Performance Low

One problem I discovered is that sensors (and the kernel) report the temp sensors from 0 to n, where cpufreqd refers to the temp sensors from 1 to (n+1)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.