Bug 15134 - ondemand governor: the frequency goes up after unplugging (in 20 sec)
Summary: ondemand governor: the frequency goes up after unplugging (in 20 sec)
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: kernel-image-std-def (show other bugs)
Version: unstable
Hardware: all Linux
: P2 normal
Assignee: Vitaly Chikunov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-03-28 06:55 MSK by Ivan Zakharyaschev
Modified: 2010-07-02 18:21 MSD (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ivan Zakharyaschev 2008-03-28 06:55:11 MSK
kernel-image-std-def-2.6.24-alt6
Dell Latitude D610

After ca. 20 sec after unplugging AC, the CPU frequency becomes the highest
(2GHz) (instead of remaining the lowest 800Mhz) and permanently remains high if
being in X (the current console is X; if I switch consoles, the frequency
usually switches to the correct 800Mhz).

I noticed this in Gnome. Then I did more clean experiments, on freshly booted
system, with all frequency daemons turned off (no powersaved, cpufreqd,
cpuspeed) and no Gnome. (But from my experience in Gnome I know that the
frequency really stays permanently high although there is no CPU load all this
time.)

All 4 governer modules have been loaded (through /etc/modules):
# lsmod | fgrep cpu
cpufreq_stats          10272  0 
acpi_cpufreq           13836  0 
xt_tcpudp               7296  7 
x_tables               19204  6
ipt_REJECT,ipt_LOG,xt_tcpudp,xt_state,xt_multiport,ip_tables
processor              40680  3 acpi_cpufreq,thermal
cpufreq_userspace       8836  0 
cpufreq_powersave       5760  0 
cpufreq_ondemand       12684  0 
freq_table              8960  3 cpufreq_stats,acpi_cpufreq,cpufreq_ondemand
cpufreq_conservative    11784  1 
# echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
# 

In linux console, the frequency usually goes up after 20 sec, but then usually
in about a minute goes down. In X, it goes up, and the usually remains high.

I did the experiment in a clean X (started by xinit, with only an xterm):
Steps to Reproduce:
Script started on Fri Mar 28 06:33:00 2008
[root@dell ~]# cpufreq-info ; date
cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006
Report errors and bugs to linux@brodo.de, please.
analyzing CPU 0:
  driver: acpi-cpufreq
  CPUs which need to switch frequency at the same time: 0
  hardware limits: 800 MHz - 2.00 GHz
  available frequency steps: 2.00 GHz, 1.60 GHz, 1.33 GHz, 1.07 GHz, 800 MHz
  available cpufreq governors: userspace, powersave, ondemand, conservative,
performance
  current policy: frequency should be within 800 MHz and 2.00 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 800 MHz (asserted by call to hardware).
Fri Mar 28 06:33:11 MSK 2008
[root@dell ~]# date # unplugging
Fri Mar 28 06:33:17 MSK 2008
[root@dell ~]# cpufreq-info ; date
cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006
Report errors and bugs to linux@brodo.de, please.
analyzing CPU 0:
  driver: acpi-cpufreq
  CPUs which need to switch frequency at the same time: 0
  hardware limits: 800 MHz - 2.00 GHz
  available frequency steps: 2.00 GHz, 1.60 GHz, 1.33 GHz, 1.07 GHz, 800 MHz
  available cpufreq governors: userspace, powersave, ondemand, conservative,
performance
  current policy: frequency should be within 800 MHz and 800 MHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 800 MHz (asserted by call to hardware).
Fri Mar 28 06:33:21 MSK 2008
[root@dell ~]# cpufreq-info ; date
cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006
Report errors and bugs to linux@brodo.de, please.
analyzing CPU 0:
  driver: acpi-cpufreq
  CPUs which need to switch frequency at the same time: 0
  hardware limits: 800 MHz - 2.00 GHz
  available frequency steps: 2.00 GHz, 1.60 GHz, 1.33 GHz, 1.07 GHz, 800 MHz
  available cpufreq governors: userspace, powersave, ondemand, conservative,
performance
  current policy: frequency should be within 800 MHz and 2.00 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 2.00 GHz (asserted by call to hardware).
Fri Mar 28 06:33:41 MSK 2008
[root@dell ~]# cpufreq-info ; date
cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006
Report errors and bugs to linux@brodo.de, please.
analyzing CPU 0:
  driver: acpi-cpufreq
  CPUs which need to switch frequency at the same time: 0
  hardware limits: 800 MHz - 2.00 GHz
  available frequency steps: 2.00 GHz, 1.60 GHz, 1.33 GHz, 1.07 GHz, 800 MHz
  available cpufreq governors: userspace, powersave, ondemand, conservative,
performance
  current policy: frequency should be within 800 MHz and 2.00 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 2.00 GHz (asserted by call to hardware).
Fri Mar 28 06:33:43 MSK 2008
[root@dell ~]# cpufreq-info ; date
cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006
Report errors and bugs to linux@brodo.de, please.
analyzing CPU 0:
  driver: acpi-cpufreq
  CPUs which need to switch frequency at the same time: 0
  hardware limits: 800 MHz - 2.00 GHz
  available frequency steps: 2.00 GHz, 1.60 GHz, 1.33 GHz, 1.07 GHz, 800 MHz
  available cpufreq governors: userspace, powersave, ondemand, conservative,
performance
  current policy: frequency should be within 800 MHz and 2.00 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 2.00 GHz (asserted by call to hardware).
Fri Mar 28 06:34:20 MSK 2008
# 
Actual Results:  
The frequency remains high. (But switching consoles makes it low. And sometimes
running powertop makes it low. Sometimes it even goes low without any special
actions, but this is rare.)

Expected Results:  
With no CPU load, the frequency is the lowest (800Mhz).
Comment 1 Ivan Zakharyaschev 2008-03-28 06:56:09 MSK
Workaround: use the conservative governor. (I experience no such problems with it.)
Comment 2 Michail Yakushin 2008-05-29 10:50:10 MSD
Try with new kernel(2.6.25-alt1)
Comment 3 Michael Shigorin 2009-08-21 21:30:49 MSD
ping
Comment 4 Michail Yakushin 2010-07-02 18:21:31 MSD
ping timeout