ThinkPad T43 CPU scaling (ondemand/fixed/..) not working correctly - Ubuntu 9.10/10.4 (stock & mainline)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Won't Fix
|
Undecided
|
Unassigned | ||
Bug Description
CPU speed is stuck at 800MHz, almost all of the time, doesn't matter if CPU is loaded or not.
I can see from utilities like powertop or the gnome cpu freq applet, that it changes to 2GHz in some moments, but without actual relation with cpu load. When I need the CPU speed for an intensive CPU task (e.g. most trivial watching a flash video, it would lag and cannot be played normally) I see that CPU load is at 98% all the time.. but CPU speed stays at 800MHz.
I can change the default ondemand governor to some other (via the gnome applet), but without any difference in cpu scaling. It just continues to jump to 2GHz for some seconds but as I said unrelated to load of system. I *cannot* set the speed to a fixed one, e.g. 2GHz or any of the others, neither with the applet nor with tools like cpufrequtils.
Problem is present with all kernels provided with ubuntu karmic - 2.6.31-14,-17,-19
I did a test with ubuntu hardy 8.04 and problem is not present, all is working fine. It was with kernel 2.6.24-26 and acpi_cpufreq is a module there it seems.
---
Some interesting (for me) observation that I made is while trying to use a custom 2.6.31-17 ubuntu kernel provided by linux-phc team, meant for undervolting the cpu (can be found on "https:/
1. I installed their kernel which is shipped with default acpi_cpufreq compiled as a module, which module is later supposed to be replaced by a custom module by linux-phc.org.
After installation/
2. I replaced the acpi_cpufreq with the custom module and again it looked for some time that the ondemand governer was working fine. Until I tried to set a fixed speed via the gnome applet. Then again it all stopped working, reboots didn't change the status-quo.
I'm not very sure if these observations are correct, that's why I put them under line.
ProblemType: Bug
Architecture: i386
AudioDevicesInUse:
USER PID ACCESS COMMAND
/dev/snd/
CRDA: Error: [Errno 2] No such file or directory
Card0.Amixer.info:
Card hw:0 'ICH6'/'Intel ICH6 with AD1981B at irq 22'
Mixer name : 'Analog Devices AD1981B'
Components : 'AC97a:41445374'
Controls : 26
Simple ctrls : 18
Date: Tue Feb 9 05:33:02 2010
DistroRelease: Ubuntu 9.10
HibernationDevice: RESUME=
InstallationMedia: Ubuntu 9.10 "Karmic Koala" - Release i386 (20091028.5)
MachineType: IBM 2668VYU
Package: linux-image-
PccardctlIdent:
Socket 0:
no product info available
PccardctlStatus:
Socket 0:
no card
ProcCmdLine: BOOT_IMAGE=
ProcEnviron:
LANG=en_US.UTF-8
SHELL=/bin/bash
ProcVersionSign
RelatedPackageV
linux-
linux-firmware 1.25
RfKill:
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
SourcePackage: linux
Uname: Linux 2.6.31-19-generic i686
dmi.bios.date: 08/21/2006
dmi.bios.vendor: IBM
dmi.bios.version: 1YET65WW (1.29 )
dmi.board.name: 2668VYU
dmi.board.vendor: IBM
dmi.board.version: Not Available
dmi.chassis.
dmi.chassis.type: 10
dmi.chassis.vendor: IBM
dmi.chassis.
dmi.modalias: dmi:bvnIBM:
dmi.product.name: 2668VYU
dmi.product.
dmi.sys.vendor: IBM
tags: | added: karmic |
summary: |
- ondemand CPU scaling not working correctly, ThinkPad T43, Ubuntu 9.10 + ondemand CPU scaling not working correctly, ThinkPad T43, Ubuntu + 9.10/10.4 |
tags: | added: lucid |
tags: | removed: needs-upstream-testing |
summary: |
- ondemand CPU scaling not working correctly, ThinkPad T43, Ubuntu - 9.10/10.4 + CPU scaling (ondemand/fixed/..) not working correctly, ThinkPad T43, + Ubuntu 9.10/10.4 & (stock & mainline) |
summary: |
- CPU scaling (ondemand/fixed/..) not working correctly, ThinkPad T43, + ThinkPad T43 CPU scaling (ondemand/fixed/..) not working correctly - Ubuntu 9.10/10.4 & (stock & mainline) |
Changed in linux (Ubuntu): | |
status: | Incomplete → Confirmed |
I can confirm this bug as well, I'm running Karmic Koala with 2.6.31-19-generic
on a Lenovo X61T
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 Duo CPU L7500 @ 1.60GHz
My system config is 8 GB RAM and P256 SSD disk, noswap (OK, added a 0.5 GB RAM-swap...)
I had noticed that the machine had been very slow lately, occasionally due to the lockup bug which locks the machine for a half or up to a minute occasionally which seems to be present in 2.6.31 as well, it seems to get better though when I stopped running Chrome which seems to be a memory hog. Also there seem to be problem with the disk cache which doesn't seem to be tunable. I definitely don't want it to use all my memory for disk cache.
Anyway, now I tested the ondemand cpu scaling, and it doesn't work. As sotirovlyu also commented I've see it go up to 1.6 GHz now and then so I haven't thought about it, but now I've seen that this is not at all load related.
OK, for my own as I'm always running the machine on external battery, or power adapter, so the compuer doesn't really know when to switch, this doesn't bother me much as I now added another CPU applet to the panel. Then I can scale each core up down, but it seems as GNOME has treated the interface for this in a strange way.
Of course I don't want any authentification question now and then when changing, according this picture i.imgur. com/OKQtq. png cpufreq- selector 1/system. d/org.gnome. CPUFreqSelector .conf
http://
I found a command which I believed was what GNOME uses /usr/bin/
and first added the %admin group to the sudoers file, didn't help. Then I added my own id, didn't help
then I found that the applet uses a separate configuration file
/etc/dbus-
and first changed user="root" to group="admin" but the stupid thing then was that I didn't get the frequency selector menu any more. Then I added user="orre" to the config file, and then got the frequency menu back, but now I still got that annoying authority question.
I finally though I found a working solution, system/ cpu/cpu0/ cpufreq/ scaling_ setspeed 1200000 system/ cpu/cpu1/ cpufreq/ scaling_ setspeed 800000
sudo cpufreq-selector -c 0 -f 800000
but that command is hanging, but now I finally have a working solution, I made a little sudo script
that can update the scaling like this
echo > /sys/devices/
echo > /sys/devices/
Now I intended to add this to /etc/acpi/ events/ battery ac_adapter/ AC/state
but that script is not called upon when I unplug the power. Shouldn't it?
and there is no possibility to run a script from the Power Management Preferences.
but I found a flag /proc/acpi/
I can write a cron script polling, to supervise my battery status.
I have the feeling that things are starting to get unnecessary complicated.
That works fine, and I'm pleased, but it seems as a lot of things could improve here...
So, it seems to be several things not working apart from the ondemand scaling:
* the command cpufreq-selector is hanging events/ battery is not called upon correctly
* the frequency selection applet doesn't care about /etc/sudoers
* the /etc/acpi/events/ac is not called upon correctly
* the /etc/acpi/