All of lore.kernel.org
 help / color / mirror / Atom feed
* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
@ 2010-10-04  6:42 ` bugzilla-daemon
  2010-10-04  6:43 ` bugzilla-daemon
                   ` (58 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-04  6:42 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702


Heinz Diehl <htd@fancy-poultry.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |cpufreq@vger.kernel.org




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
  2010-10-04  6:42 ` [Bug 19702] i5-450M CPU gets stuck in low/lowest state bugzilla-daemon
@ 2010-10-04  6:43 ` bugzilla-daemon
  2010-10-04  6:44 ` bugzilla-daemon
                   ` (57 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-04  6:43 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #1 from Heinz Diehl <htd@fancy-poultry.org>  2010-10-04 06:43:17 ---
Created an attachment (id=32512)
 --> (https://bugzilla.kernel.org/attachment.cgi?id=32512)
dmesg output

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
  2010-10-04  6:42 ` [Bug 19702] i5-450M CPU gets stuck in low/lowest state bugzilla-daemon
  2010-10-04  6:43 ` bugzilla-daemon
@ 2010-10-04  6:44 ` bugzilla-daemon
  2010-10-08  5:26 ` bugzilla-daemon
                   ` (56 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-04  6:44 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #2 from Heinz Diehl <htd@fancy-poultry.org>  2010-10-04 06:44:22 ---
Created an attachment (id=32522)
 --> (https://bugzilla.kernel.org/attachment.cgi?id=32522)
Patch from Thomas R.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (2 preceding siblings ...)
  2010-10-04  6:44 ` bugzilla-daemon
@ 2010-10-08  5:26 ` bugzilla-daemon
  2010-10-08 12:59 ` bugzilla-daemon
                   ` (55 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-08  5:26 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702


Zhang Rui <rui.zhang@intel.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |acpi-bugzilla@lists.sourcef
                   |                            |orge.net, lenb@kernel.org,
                   |                            |rui.zhang@intel.com
         AssignedTo|acpi_power-processor@kernel |trenn@suse.de
                   |-bugs.osdl.org              |




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (3 preceding siblings ...)
  2010-10-08  5:26 ` bugzilla-daemon
@ 2010-10-08 12:59 ` bugzilla-daemon
  2010-10-08 19:04 ` bugzilla-daemon
                   ` (54 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-08 12:59 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702


Thomas Renninger <trenn@suse.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |NEEDINFO




--- Comment #3 from Thomas Renninger <trenn@suse.de>  2010-10-08 12:59:38 ---
Cpufreq info is embedded into dynamically loaded ACPI tables which you need to
dump manually. Please run:
acpidump --addr 0xAADA3918 --length 0x3FB >/tmp/CPU0IST
acpidump --addr 0xAADA2A98  --length 0x303 >/tmp/APIST
acpidump --addr 0xAADA1018 --length 0x8A9 >/tmp/CPU0CST
acpidump --addr 0xAADA0D98 --length 0x119 >/tmp/APCST
and attach (zipped?) output files. Thanks.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (4 preceding siblings ...)
  2010-10-08 12:59 ` bugzilla-daemon
@ 2010-10-08 19:04 ` bugzilla-daemon
  2010-10-08 19:06 ` bugzilla-daemon
                   ` (53 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-08 19:04 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #4 from Heinz Diehl <htd@fancy-poultry.org>  2010-10-08 19:04:00 ---
Hi,
the output of these commands is attached here.

Thanks,
-heinz

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (5 preceding siblings ...)
  2010-10-08 19:04 ` bugzilla-daemon
@ 2010-10-08 19:06 ` bugzilla-daemon
  2010-10-12 11:19 ` bugzilla-daemon
                   ` (52 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-08 19:06 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #5 from Heinz Diehl <htd@fancy-poultry.org>  2010-10-08 19:06:03 ---
Created an attachment (id=32902)
 --> (https://bugzilla.kernel.org/attachment.cgi?id=32902)
Output of the commands asked by Thomas R.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (6 preceding siblings ...)
  2010-10-08 19:06 ` bugzilla-daemon
@ 2010-10-12 11:19 ` bugzilla-daemon
  2010-10-14  5:56 ` bugzilla-daemon
                   ` (51 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-12 11:19 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #6 from Thomas Renninger <trenn@suse.de>  2010-10-12 11:19:47 ---
The BIOS latency values look sane, I wonder why my patch helps.
Because I am blindfolded..., this is about reducing up_threshold and
it is a a duplicate of bug #17001.
Can you try to lower up_treshold to 53 or below as mentioned there and then use
cat /dev/zero >/dev/null &
multiple times to utilize CPUs.

Looks like something broke somewhen before 2.6.35.7.
Do you know about a kernel version that did not show this?

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (7 preceding siblings ...)
  2010-10-12 11:19 ` bugzilla-daemon
@ 2010-10-14  5:56 ` bugzilla-daemon
  2010-10-14  5:58 ` bugzilla-daemon
                   ` (50 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-14  5:56 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702


mobusby@yahoo.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mobusby@yahoo.com




--- Comment #7 from mobusby@yahoo.com  2010-10-14 05:56:36 ---
I am having a similar problem, but changing the CPU governor or threshhold
doesn't help.  I wrote a little script to test my CPU, and it appears that the
BIOS is limiting the CPU at high work loads, but not at low work loads.  After
some time at full BIOS limiting ACPI throttling begins.  The temperature never
gets high enough for throttling.

I am using the stock Kernel from Ubuntu 10.10.  This behavior was not present
in Ubuntu 10.04, and is not present when running Windows.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (8 preceding siblings ...)
  2010-10-14  5:56 ` bugzilla-daemon
@ 2010-10-14  5:58 ` bugzilla-daemon
  2010-10-14  9:11 ` bugzilla-daemon
                   ` (49 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-14  5:58 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #8 from mobusby@yahoo.com  2010-10-14 05:58:41 ---
Created an attachment (id=33562)
 --> (https://bugzilla.kernel.org/attachment.cgi?id=33562)
Simple CPU tester and reporter.

The results from running the test on my computer are attached to the bottom of
the script in comments.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (9 preceding siblings ...)
  2010-10-14  5:58 ` bugzilla-daemon
@ 2010-10-14  9:11 ` bugzilla-daemon
  2010-10-14  9:22 ` bugzilla-daemon
                   ` (48 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-14  9:11 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #9 from Thomas Renninger <trenn@suse.de>  2010-10-14 09:11:54 ---
Mobusby: You have another problem which is BIOS related.
Best check for the latest BIOS. Here is a similar bug (but the root cause in
BIOS is probably different). BIOS limits the frequ on purpose, you have to find
out why...
Best also check your BIOS settings (best after a upgrade).
Some things to check:
Temperature might be related, AC/battery, dirty fan slot, only happens after
suspend (disk/ram)?
If nothing helps, processor.ignore_ppc=1 will ignore the limit from BIOS.
If you tried that far, then please open a new bug and attach dmesg and acpidump
output and assign it to me.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (10 preceding siblings ...)
  2010-10-14  9:11 ` bugzilla-daemon
@ 2010-10-14  9:22 ` bugzilla-daemon
  2010-10-14 15:20 ` bugzilla-daemon
                   ` (47 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-14  9:22 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #10 from Thomas Renninger <trenn@suse.de>  2010-10-14 09:22:48 ---
Mobusby: Here is a similar bug (but the root cause in BIOS is probably
different):
https://bugzilla.kernel.org/show_bug.cgi?id=16362

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (11 preceding siblings ...)
  2010-10-14  9:22 ` bugzilla-daemon
@ 2010-10-14 15:20 ` bugzilla-daemon
  2010-10-15 10:07 ` bugzilla-daemon
                   ` (46 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-14 15:20 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #11 from Heinz Diehl <htd@fancy-poultry.org>  2010-10-14 15:20:38 ---
Hi Thomas,
lowering up_threshold helps. Standard after booting without having the kernel
patched is 95, after your patch it is set to 40. I didn't install a lot of
different kernels yet, because the machine is brand new, but I noticed to my
surprise at 2.6.36-rc7-git3 seems to have cured the problem. There's no cpufreq
related patch in there, as far as I could see, so I wonder what the f*ck is
going on here :-)

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (12 preceding siblings ...)
  2010-10-14 15:20 ` bugzilla-daemon
@ 2010-10-15 10:07 ` bugzilla-daemon
  2010-10-15 10:12 ` bugzilla-daemon
                   ` (45 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-15 10:07 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702


Thomas Renninger <trenn@suse.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEEDINFO                    |ASSIGNED
                 CC|                            |a.p.zijlstra@chello.nl,
                   |                            |mingo@elte.hu, rjw@sisk.pl




--- Comment #12 from Thomas Renninger <trenn@suse.de>  2010-10-15 10:07:06 ---
Thanks!
So it looks like we have a regression in 2.6.35 kernel which got fixed between 
 2.6.36-rc6-git2 and 2.6.36-rc7-git3.
It affects idle/busy/io CPU accounting in way that cpufreq ondemand governor
does not switch up frequency (only with the workaround by dramatically
decreasing up_threshold tunable).

The fix seem not to be in any cpufreq related code (According to Heinz, I
didn't double check, but haven't seen anything on the cpufreq list lately).

Rafael/Ingo/Peter: Do you have an idea which patch could have solved this
issue.
This should probably go to .35 stable...

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (13 preceding siblings ...)
  2010-10-15 10:07 ` bugzilla-daemon
@ 2010-10-15 10:12 ` bugzilla-daemon
  2010-10-15 10:15 ` bugzilla-daemon
                   ` (44 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-15 10:12 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702


Thomas Renninger <trenn@suse.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |peter.ganzhorn@googlemail.c
                   |                            |om




--- Comment #13 from Thomas Renninger <trenn@suse.de>  2010-10-15 10:11:52 ---
*** Bug 17001 has been marked as a duplicate of this bug. ***

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (14 preceding siblings ...)
  2010-10-15 10:12 ` bugzilla-daemon
@ 2010-10-15 10:15 ` bugzilla-daemon
  2010-10-15 17:52 ` bugzilla-daemon
                   ` (43 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-15 10:15 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #14 from Thomas Renninger <trenn@suse.de>  2010-10-15 10:15:06 ---
In bug #17001 it's stated:
> As far as I can tell, the problem exists at least since kernel version 2.6.30
But this would be something machine specific then, someone should have reported
that already meanwhile.
Could also be that above statement is wrong and something went wrong when
testing 2.6.30 and this is as mentioned a regression introduced in 2.6.35 and
fixed somewhere between 2.6.36-rc6-git2 and 2.6.36-rc7-git3...

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (15 preceding siblings ...)
  2010-10-15 10:15 ` bugzilla-daemon
@ 2010-10-15 17:52 ` bugzilla-daemon
  2010-10-15 19:25 ` bugzilla-daemon
                   ` (42 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-15 17:52 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #15 from vyncere <vyncere@gmail.com>  2010-10-15 17:52:16 ---
Hi all,

I have an Intel Core i5 520 M (Thinkpad T410). This is when I switched from
Ubuntu 10.04 (2.6.32.15) to Ubuntu 10.10 (2.6.35.4) that the problem has made
itself visible.

* With the stock kernel of Ubuntu 10.04 : (Ondemand WORKS)
cpufreq-info said for all virtual CPUs :

hardware limits: 1.20 GHz - 2.40 GHz
current policy: frequency should be within 1.20 GHz and 2.40 GHz.
The governor "ondemand" may decide which speed to use within this range.
current CPU frequency is 1.20 GHz.
cpufreq stats: 2.40 GHz:3.26%, 2.40 GHz:0.02%, 2.27 GHz:0.05%, 2.13 GHz:0.05%,
2.00 GHz:0.03%, 1.87 GHz:0.02%, 1.73 GHz:0.03%, 1.60 GHz:0.01%, 1.47 GHz:0.03%,
1.33 GHz:0.03%, 1.20 GHz:96.48%  (235)

* With the stock kernel of Ubuntu 10.10 : (Ondemand FAILS)
cpufreq-info said for all virtual CPUs :
hardware limits: 1.20 GHz - 2.40 GHz
current policy: frequency should be within 1.20 GHz and 1.20 GHz.
current CPU frequency is 1.20 GHz.
cpufreq stats: 2.40 GHz:0.00%, 2.40 GHz:0.00%, 2.27 GHz:0.00%, 2.13 GHz:0.00%,
2.00 GHz:0.00%, 1.87 GHz:0.00%, 1.73 GHz:0.00%, 1.60 GHz:0.00%, 1.47 GHz:0.00%,
1.33 GHz:0.00%, 1.20 GHz:100.00%

I took my custom reference configuration (.config) of my laptop which perfectly
works with the 2.6.32.15 Ubuntu Kernel and tested it with some different kernel
versions (from kernel.org), in order to reduce the incidence of Ubuntu patches.

* Results :

2.6.32.15 : Ondemand scaling OK
2.6.32.16 : Ondemand scaling OK
2.6.32.17 : Ondemand scaling OK
2.6.32.18 : Ondemand scaling OK
2.6.32.19 : Ondemand scaling OK
2.6.32.20 : Ondemand scaling OK
2.6.32.21 : Ondemand scaling OK
2.6.32.22 : Ondemand scaling OK
2.6.32.23 : Ondemand scaling OK
2.6.32.24 : Ondemand scaling OK

So, at this state, could it be concluded that the problem has came after 2.6.32
? Not so sure ! Because, as it was underlines higher in this thread, this
problem may highly be machine specific... In any case, this is the second bug
reporting, impacting a Core i5 CPU. On Ubuntu launchpad, someone with a Core 2
Duo T7200 CPU is affected by this problem too (2.6.35.4 from Ubuntu 10.10).

I have tested too with a clean 2.6.35.7 with and without the patch from Thomas
R. For both, the result is the same : Ondemand scaling KO.

I will tell you what happens with >= 2.6.33 kernels.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (16 preceding siblings ...)
  2010-10-15 17:52 ` bugzilla-daemon
@ 2010-10-15 19:25 ` bugzilla-daemon
  2010-10-15 19:37 ` bugzilla-daemon
                   ` (41 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-15 19:25 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #16 from Thomas Renninger <trenn@suse.de>  2010-10-15 19:24:59 ---
Could have been related to cpuidle and the new intel_idle driver, but I also
see no recent fixes there as well.
If this is true:
fixed between 2.6.36-rc6-git2 and 2.6.36-rc7-git3
it shouldn't be that hard to bisect on those rather stable versions.
Be aware that you have to exchange git "good" and "bad" if you search for a fix
and not for a regression/bug.

That would be:
git start <bad>           <good>
git start 2.6.36-rc7-git3 2.6.36-rc6-git2
If a version works well go for git bad
if it shows the bug go for git good

gitX is not tagged in git though, no idea how one can find out the git id of
these subcommits/merges?

Heinz: How sure are you that it got fixed in 2.6.36-rc7-git3?

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (17 preceding siblings ...)
  2010-10-15 19:25 ` bugzilla-daemon
@ 2010-10-15 19:37 ` bugzilla-daemon
  2010-10-16  8:56 ` bugzilla-daemon
                   ` (40 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-15 19:37 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #17 from Thomas Renninger <trenn@suse.de>  2010-10-15 19:36:59 ---
If someone wants to test whether this has to do with intel_idle driver you
should be able to check the used driver (new intel_idle vs acpi_idle):
cat /sys/devices/system/cpu/cpuidle/current_driver

The new cpupowerutils (former cpufrequtils) show this via:
cpuidle-info

If intel_idle is used the boot param:
intel_idle.max_cstate=0
should make the machine fall back to acpi_idle...
Just an idea..., idle driver sounds possibly related to wrong idle
accounting... and this is an easy check compared to compiling/bisecting...

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (18 preceding siblings ...)
  2010-10-15 19:37 ` bugzilla-daemon
@ 2010-10-16  8:56 ` bugzilla-daemon
  2010-10-16  9:19 ` bugzilla-daemon
                   ` (39 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-16  8:56 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #18 from vyncere <vyncere@gmail.com>  2010-10-16 08:56:37 ---
I just did some tests with >= 2.6.33 Kernels.

* Results :

2.6.33    : KERNEL_PANIC (Ouch !!!)
2.6.33.1  : Ondemand scaling KO (freeze my laptop after few minutes... I did
not investigate deeply...)

In any case, just before freezing, I had enough time to check cpufreq-info and
cpuidle state. 

* cpufreq-info print out the same "hardware limits" and "cpufreq stats" that I
reported higher in this thread, when Ondemand governor failed to scale.

So the regression may highly appear since 2.6.33.

* The current driver used for cpuidle was "acpi_idle".

So, if intel_idle driver is not incriminated, we can check the differences
between 2.6.32.24 and 2.6.33[.1] Kernel tree, which may cause this regression.

* Comparing the two "drivers/cpufreq" directories, there are some changes
between :
- cpufreq.c (add bios limit reading and release the rwsem around governor)
- cpufreq_conservative.c (some stuffs, but I never use this gouvernor)
- cpufreq_ondemand.c (very few : add a condition to read the new min policy)
- freq_table.c (some function names refactoring)

I'm not a kernel hacker and I do not know (not yet) how the cpufreq API works.

I hope this information will help you.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (19 preceding siblings ...)
  2010-10-16  8:56 ` bugzilla-daemon
@ 2010-10-16  9:19 ` bugzilla-daemon
  2010-10-19  2:50 ` bugzilla-daemon
                   ` (38 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-16  9:19 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #19 from vyncere <vyncere@gmail.com>  2010-10-16 09:19:07 ---
Hi all,

I just tested my fresh and unstable 2.6.33.1 kernel with functional cpufreq
driver from 2.6.32.24.

* Result : Ondemand scaling KO

So the regression may come from somewhere else... !

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (20 preceding siblings ...)
  2010-10-16  9:19 ` bugzilla-daemon
@ 2010-10-19  2:50 ` bugzilla-daemon
  2010-10-19  3:12 ` bugzilla-daemon
                   ` (37 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-19  2:50 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #20 from Thomas Renninger <trenn@suse.de>  2010-10-19 02:50:10 ---
I possibly know the problem.
What does:
cat /sys/devices/system/cpu/cpu0/cpufreq/{affected_cpus,related_cpus}
say?
I expect (and from ACPI table info it's very likely this is the case for
Heinz's system) that ACPI_PDC_SMP_P_HWCOORD is used.
Compare with 8.4.4.5 _PSD (P-State Dependency) (ACPI spec):
CoordType: DWordConst
The type of coordination that exists (hardware) or is required (software) as a
result of the underlying hardware dependency. Could be either 0xFC (SW_ALL),
0xFD (SW_ANY) or 0xFE (HW_ALL) indicating whether OSPM is responsible for
coordinating the P-state transitions among processors with dependencies (and
needs to initiate the transition on all or any processor in the domain) or
whether the hardware will perform this coordination.

Heinz's BIOS differs _PDC (OS capabilities) and exports HW_ANY in case the
kernel tells the BIOS it can do it (and it does).

I remember another machine (Jean Delvare) where frequency switching was totally
messed up then.
So this may not be a real kernel bug. I can provide a patch so that HW_COORD OS
capability is not set, that should help Heinz can we can verify whether it's
that.

It's hard to check which coordination type is used at runtime.
I once looked it up a bit and the if affected_cpus, related_cpus are not the
same it must be HW_ANY, iirc.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (21 preceding siblings ...)
  2010-10-19  2:50 ` bugzilla-daemon
@ 2010-10-19  3:12 ` bugzilla-daemon
  2010-10-19  3:51 ` bugzilla-daemon
                   ` (36 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-19  3:12 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #21 from Thomas Renninger <trenn@suse.de>  2010-10-19 03:11:56 ---
Created an attachment (id=34092)
 --> (https://bugzilla.kernel.org/attachment.cgi?id=34092)
Patch introducing boot param to disable HW_COORD type

Please try:
processor.disable_hw_coord=1
boot param with this patch.
Hm, pdc is called rather early these days. The param won't be considered for
the first _PDC call in arch/x86/kernel/acpi/boot.c.
But that should not matter and I hope it gets used later, otherwise it must be
an early param...
I try to come up with another patch to export the coordination type to be able
to check this...

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (22 preceding siblings ...)
  2010-10-19  3:12 ` bugzilla-daemon
@ 2010-10-19  3:51 ` bugzilla-daemon
  2010-10-19  3:52 ` bugzilla-daemon
                   ` (35 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-19  3:51 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #22 from Thomas Renninger <trenn@suse.de>  2010-10-19 03:51:38 ---
Created an attachment (id=34102)
 --> (https://bugzilla.kernel.org/attachment.cgi?id=34102)
Provide /sys/devices/system/cpu/cpu*/cpufreq/shared_type

This should be:
CPUFREQ_SHARED_TYPE_ALL  (2)
if you added the boot param provided in the previous patch
and
CPUFREQ_SHARED_TYPE_HW   (1)
by default.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (23 preceding siblings ...)
  2010-10-19  3:51 ` bugzilla-daemon
@ 2010-10-19  3:52 ` bugzilla-daemon
  2010-10-19  7:34 ` bugzilla-daemon
                   ` (34 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-19  3:52 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702


Thomas Renninger <trenn@suse.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #34102|application/octet-stream    |text/plain
          mime type|                            |
  Attachment #34102|0                           |1
           is patch|                            |




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (24 preceding siblings ...)
  2010-10-19  3:52 ` bugzilla-daemon
@ 2010-10-19  7:34 ` bugzilla-daemon
  2010-10-19  9:40 ` bugzilla-daemon
                   ` (33 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-19  7:34 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #23 from Peter Ganzhorn <peter.ganzhorn@googlemail.com>  2010-10-19 07:34:20 ---
Concerning bug 17001, which I filed, I have to report that the issue has not
magically disappeared for me with the 2.6.36-rc kernels.
I finally managed to compile 2.6.36-rc7 and -rc8 (had an error building the
i915 driver before) and Core2 Duo T7300 CPU still is stuck at the lowest
frequency without lowering up_threshold to 53 or lower.

Would it help if I provided you with some ACPI information? What do you need?

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (25 preceding siblings ...)
  2010-10-19  7:34 ` bugzilla-daemon
@ 2010-10-19  9:40 ` bugzilla-daemon
  2010-10-19 14:13 ` bugzilla-daemon
                   ` (32 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-19  9:40 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #24 from Thomas Renninger <trenn@suse.de>  2010-10-19 09:40:32 ---
Would it help if I provided you with some ACPI information? What do you need?
acpidump output for now. Need to look up the addresses of dynamic tables.
Possibly you can look it up yourself.
Do:
acpixtract acpidump
iasl -d *.dat
grep -i load *.dsl
You may see something like that then:
SSDT.dsl:                    Load (IST0, HI0)
SSDT.dsl:                    Load (CST0, HC0)
SSDT.dsl:                Load (CST1, HC1)
SSDT.dsl:                Load (IST1, HI1)
Which is the address/length of the dynamically loaded table.
On this system you there is:
OperationRegion (IST0, SystemMemory, DerefOf (Index (SSDT, One)), DerefOf
(Index (SSDT, 0x02)))
and
Name (SSDT, Package (0x0C)
        {
            "CPU0IST ",
            0xAADA3918,
            0x000003FB,
            "APIST   ",
            0xAADA2A98,
            0x00000303,
            "CPU0CST ",
            0xAADA1018,
            0x000008A9,
            "APCST   ",
            0xAADA0D98,
            0x00000119
        })

These are the names/address/length of the tables you need to extract manually
with
acpidump --addr 0xAADA3918 --length 0x000003FB >CPU0IST.dat
acpidump --addr 0xAADA2A98 --length 0x00000303 >CPU0CST.dat

They possibly can already be found there:
/sys/firmware/acpi/tables/
not sure.

But you could also just give my two patches a try and show us:
cat /sys/devices/system/cpu/cpu*/cpufreq/shared_type
if it shows CPUFREQ_SHARED_TYPE_ALL  (2)
it's worth to the boot param mentioned in comment #21

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (26 preceding siblings ...)
  2010-10-19  9:40 ` bugzilla-daemon
@ 2010-10-19 14:13 ` bugzilla-daemon
  2010-10-19 22:47 ` bugzilla-daemon
                   ` (31 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-19 14:13 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #25 from Peter Ganzhorn <peter.ganzhorn@googlemail.com>  2010-10-19 14:13:07 ---
Here's what I have in

# ls /sys/firmware/acpi/tables/
APIC  DSDT     FACP  HPET  SLIC   SSDT2  SSDT4    SSDT6  SSDT8
BOOT  dynamic  FACS  MCFG  SSDT1  SSDT3  SSDT5    SSDT7  TCPA

I guess you want the SSDT* . Do you need any other files from there?

Further I applied your two patches to 2.6.36-rc8 and without the boot parameter
I'm getting:

# cat /sys/devices/system/cpu/cpu*/cpufreq/shared_type
2
2

With processor.disable_hw_coord=1 I'm getting the exact same thing:


# uname -rs
Linux 2.6.36-rc8-pgzh
# dmesg | grep hw_coord
Kernel command line: BOOT_IMAGE=/vmlinuz.exp root=/dev/sda3 ro
processor.disable_hw_coord=1
centauri:/home/pgzh# cat /sys/devices/system/cpu/cpu*/cpufreq/shared_type
2
2

There's no change in CPUFREQ behavior as well - I'm stuck with the lowest freq
unless I lower up_threshold.

In the CPUFREQ drivers section in kconfig I have the following set:
# CONFIG_X86_PCC_CPUFREQ is not set
Should this be enabled?
I only got the ACPI driver enabled right now. (CONFIG_X86_ACPI_CPUFREQ=m)

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (27 preceding siblings ...)
  2010-10-19 14:13 ` bugzilla-daemon
@ 2010-10-19 22:47 ` bugzilla-daemon
  2010-10-28 15:12 ` bugzilla-daemon
                   ` (30 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-19 22:47 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #26 from vyncere <vyncere@gmail.com>  2010-10-19 22:47:14 ---
Hi all,

So with my Core i5 520 M (2 physical cores, 4 logical cores):

* 2.6.32.15 (ubuntu), 2.6.35.7 (kernel.org), 2.6.35.7 (kernel.org + 2 patchs) :

- Values of /sys/devices/system/cpu/cpu*/cpufreq/affected_cpus are : "0", "1",
"2" and "3" respectively for cpu0, cpu1, cpu2 and cpu3.

- Output of /sys/devices/system/cpu/cpu*/cpufreq/related_cpus is always : "0 1
2 3"

No problem.

* 2.6.35.7 (kernel.org + 2 patchs) with and without boot parameter
"processor.disable_hw_coord=1" :

- Output of /sys/devices/system/cpu/cpu*/cpufreq/shared_type is always :
1

Always default value 1 (CPUFREQ_SHARED_TYPE_HW) : so, Thomas, according to what
you said, there is something wrong here...

- cpufreq-info returns the same result as before (lowest freq).
- /sys/devices/system/cpu/cpufreq/ondemand/up_threshold is 95 by default.
- Lower the up_threshold has no effect for me.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (28 preceding siblings ...)
  2010-10-19 22:47 ` bugzilla-daemon
@ 2010-10-28 15:12 ` bugzilla-daemon
  2010-10-28 15:13 ` bugzilla-daemon
                   ` (29 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-28 15:12 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #27 from Thomas Renninger <trenn@suse.de>  2010-10-28 15:12:08 ---
I expect acpi-cpufreq is fundamentally broken in respect to HW_ALL
coordination.
The only aspect acpi-cpufreq or cpufreq subsystem takes into account in HW_ALL
case is to make sure that the same governor is running on all dependent CPUs in
case CONFIG_HOTPLUG_CPU is set in .config.
Otherwise the dependent CPUs are only shown as "related" in sysfs, that's all.

The only thing which makes me wonder is: Why has this not come up earlier...

From ACPI spec it's impossible to guess how OS should deal with HW_ALL.
Googling about it leads to this bug :) and one interesting discussion:
http://www.mail-archive.com/linux-acpi@vger.kernel.org/msg11682.html
-> adding Len and Rui into CC.
But from there it's also not 100% clear.

While SW_ALL is very clear, I could imagine the difference between HW_ALL and
SW_ANY is that the (MSR/HW) status registers may/may not get updated. Or that
HW may or may not transition the other core(s) into the same state and SW has
to re-evaluate (what would be rather stupid and SW_ALL algorithm should apply
then).

Hmm, I found:
14.2 P-STATE HARDWARE COORDINATION
in
Intel® 64 and IA-32 Architectures Software Developer’s Manual
Volume 3A: System Programming Guide, Part 1

But the code in there is so poor.
Essentially it tells us to use aperf/mperf for switching decisions.
The part that aperf/mperf should get reset to 0, should vanish from this
document, it's possible to write an algorithm which can handle register
overflows, setting them back to zero is wrong.

And this comment there:
// This example does not cover the additional logic or algorithms
// necessary to coordinate multiple logical processors to a target P-state.
makes me wonder whether we also miss this additional logic in
acpi-cpufreq/ondemand.

The ondemand governor must know about the dependency and look at the
utilization of all dependent cores when doing decisions which is not the case.
I expect Heinz and Peter get "half way correct" switching at about 52
up_threshold because they have two "related" cores.
Vyncere you have 4 dependent cores, if your core(s) are switched up with an
up_threshold of 25 I expect you see the same bug.

My patches or say workaround may help for Heinz's BIOS, it may not for others.
Also this must get fixed properly. For this some input from Intel people would
be great how HW_ALL must get handled or better how it's done on Windows.

You could try to find out how your HW behave by not loading any cpufreq driver,
get the msr-tools package and set the frequency on single cores manually and
then read out status MSR whether the dependent cores switched as well (question
is whether the status is true then, may be CPU specific and may have nothing to
do how the OS must implement HW_ALL algorithm).
The MSRs are:
#define MSR_IA32_PERF_STATUS 0x00000198     
#define MSR_IA32_PERF_CTL    0x00000199
You have to be careful that only 16 bits (0-15, cmp. with chapter 14.3.2.2 in
above mentioned document) are used when you write to PERF_CTL, you have to read
out and keep the others and write them back as well.

Long story short (Provided my whole research for comments whether I have a
thinko):
HW_ALL is about taking aperf/mperf into account. We do not rely on BIOS, but
determine that already by reading out cpuid aperf/mperf capabilities of the CPU
directly. Still the governor must consider all dependent cores which is
currently not the case and which is a major bug.
Question still is whether all cores (like SW_ALL) or only one core (like
SW_ANY) is enough to switch. SW_ALL should work for sure -> will provide a
patch.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (29 preceding siblings ...)
  2010-10-28 15:12 ` bugzilla-daemon
@ 2010-10-28 15:13 ` bugzilla-daemon
  2010-10-29 11:06 ` bugzilla-daemon
                   ` (28 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-28 15:13 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #28 from Thomas Renninger <trenn@suse.de>  2010-10-28 15:13:22 ---
Created an attachment (id=35352)
 --> (https://bugzilla.kernel.org/attachment.cgi?id=35352)
CPUFREQ: Fix HW_ALL core dependencies

Please give it a try...

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (30 preceding siblings ...)
  2010-10-28 15:13 ` bugzilla-daemon
@ 2010-10-29 11:06 ` bugzilla-daemon
  2010-10-29 12:14 ` bugzilla-daemon
                   ` (27 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-29 11:06 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #29 from Peter Ganzhorn <peter.ganzhorn@googlemail.com>  2010-10-29 11:06:22 ---
I applied the patch "CPUFREQ: Fix HW_ALL core dependencies" to a vanilla 2.6.36
(without any of the previously posted patches) and it did NOT fix the problem
for me. I'm still stuck at the lowest freq until I lower up_threshold.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (31 preceding siblings ...)
  2010-10-29 11:06 ` bugzilla-daemon
@ 2010-10-29 12:14 ` bugzilla-daemon
  2010-10-29 13:00 ` bugzilla-daemon
                   ` (26 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-29 12:14 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #30 from Thomas Renninger <trenn@suse.de>  2010-10-29 12:14:38 ---
Thanks. I still think not considering core dependencies in HW_ALL case is
wrong, but this needs further/separate discussing/evaluation.

Peter, as you said with exactly same HW and kernel version/.config:
This one is broken:
Intel Core2 Duo T7300 2.0 GHz processor
and this one is not:
Intel Core2 Quad Q9550

Could you show us:
cat /sys/devices/system/clocksource/clocksource0/available_clocksource
and
cat /sys/devices/system/clocksource/clocksource0/current_clocksource
does it make a difference switching, e.g. to hpet?
echo xy >/sys/devices/system/clocksource/clocksource0/current_clocksource

Ok, I checked Heinz's and Peter's dmesg:

Heinz explicitly enables hpet via boot param (what is this for?)
clocksource=hpet acpi_skip_timer_override

And Peter has:
Marking TSC unstable due to TSC halts in idle
Switching to clocksource hpet

It's always only CPU0 not switching up, right?
Looks like something with hpet is wrong.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (32 preceding siblings ...)
  2010-10-29 12:14 ` bugzilla-daemon
@ 2010-10-29 13:00 ` bugzilla-daemon
  2010-10-29 15:49 ` bugzilla-daemon
                   ` (25 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-29 13:00 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #31 from Thomas Renninger <trenn@suse.de>  2010-10-29 13:00:19 ---
I also wonder whether if you bind a 100% CPU utilizing task to CPU0:
numactl --physcpubind=0 cat /dev/zero >/dev/null
whether top (and then hit "1" to see each CPU's utilization) really shows you
100% (sy + us) running and 0% idle time?

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (33 preceding siblings ...)
  2010-10-29 13:00 ` bugzilla-daemon
@ 2010-10-29 15:49 ` bugzilla-daemon
  2010-10-29 20:15 ` bugzilla-daemon
                   ` (24 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-29 15:49 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #32 from Peter Ganzhorn <peter.ganzhorn@googlemail.com>  2010-10-29 15:49:01 ---
numactl --physcpubind=0 cat /dev/zero >/dev/null

produces about 95%sys and 5%us load on _ONE_ core. idle goes down to 0.0%
immediately. This behavior does not change when changing up_threshold.

# cat /sys/devices/system/clocksource/clocksource0/available_clocksource
hpet acpi_pm

# cat /sys/devices/system/clocksource/clocksource0/current_clocksource
hpet

So my system is already using the HPET clocksource.
Changing to acpi_pm has no effect on cpu frequency scaling (with the default
up_threshold, of course).
The system did switch to acpi_pm as dmesg reveals:
Switching to clocksource acpi_pm

Concerning HPET and TSC I got the following from dmesg:
ACPI: HPET 000000007f736b66 00038 (v01 TOSHIB A0054    20070816 TASM 04010000)
ACPI: HPET id: 0x8086a201 base: 0xfed00000
hpet clockevent registered
Fast TSC calibration failed
TSC: PIT calibration matches HPET. 1 loops
HPET: 3 timers in total, 0 timers will be used for per-cpu timer
hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0
hpet0: 3 comparators, 64-bit 14.318180 MHz counter
Switching to clocksource tsc
Marking TSC unstable due to TSC halts in idle
Switching to clocksource hpet
rtc0: alarms up to one year, 114 bytes nvram, hpet irqs
CE: hpet increased min_delta_ns to 7500 nsec
CE: hpet increased min_delta_ns to 11250 nsec

The "hpet increased min_delta_ns" message shows up on the system with the Core2
Quad Q9550 as well, but obviously this does not affect cpu frequency scaling
either. To me everything else looks fine.

BTW, do you still need the ACPI tables you mentioned in Comment #24? If so,
please tell which of the ones I got (see Comment #25) you would like to have.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (34 preceding siblings ...)
  2010-10-29 15:49 ` bugzilla-daemon
@ 2010-10-29 20:15 ` bugzilla-daemon
  2010-10-29 20:19 ` bugzilla-daemon
                   ` (23 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-29 20:15 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #33 from Thomas Renninger <trenn@suse.de>  2010-10-29 20:15:27 ---
I wonder why Heinz has:
clocksource=hpet acpi_skip_timer_override

Peter's machine has an unstable TSC, that is strange, cpuflags show
constant_tsc.
So it seems it falls through some boot check to not increment constantly.

Hmm, you both seem to have problems with TSC..., aperf/mperf may be fed by the
same internal clock as TSC. If average frequency calced via aperf/mperf is very
low, the frequency would never get ramped up.

It's hard to believe, because you have so different CPUs, but it looks like you
both have broken TSC/aperf/mperf timers on CPU 0? At least Peter has?

Another patch to try.., please use:
acpi_cpufreq.disable_average=1
boot param and check dmesg that it got applied:
"acpi-cpufreq: average (aperf/mperf) accounting disabled by user"

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (35 preceding siblings ...)
  2010-10-29 20:15 ` bugzilla-daemon
@ 2010-10-29 20:19 ` bugzilla-daemon
  2010-11-01 10:49 ` bugzilla-daemon
                   ` (22 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-10-29 20:19 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #34 from Thomas Renninger <trenn@suse.de>  2010-10-29 20:19:32 ---
Created an attachment (id=35492)
 --> (https://bugzilla.kernel.org/attachment.cgi?id=35492)
Patch to workaround the possible HW defect

If this really helps, please also try cpufreq-aperf tool from a latest
cpufrequtils package and check what kind of broken values aperf/mperf provide
on CPU0.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (36 preceding siblings ...)
  2010-10-29 20:19 ` bugzilla-daemon
@ 2010-11-01 10:49 ` bugzilla-daemon
  2010-11-01 13:42 ` bugzilla-daemon
                   ` (21 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-01 10:49 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #35 from Peter Ganzhorn <peter.ganzhorn@googlemail.com>  2010-11-01 10:49:11 ---
# dmesg | grep acpi-cpufreq
acpi-cpufreq: average (aperf/mperf) accounting disabled by user
acpi-cpufreq: average (aperf/mperf) accounting disabled by user

This patch actually *FIXED* the problem for me.

Please give me some instructions on how to use cpufreq-aperf - how do I use the
tool? When running it, it gives me an output like this (with the patched
kernel):

# cpufreq-aperf 
CPU    Average freq(KHz)    Time in C0    Time in Cx    C0 percentage
000    0500250            00 sec 041 ms    00 sec 958 ms    04
001    0460230            00 sec 056 ms    00 sec 943 ms    05

000    0500250            00 sec 045 ms    00 sec 954 ms    04
001    0620310            00 sec 056 ms    00 sec 943 ms    05

000    0480240            00 sec 033 ms    00 sec 966 ms    03
001    0520260            00 sec 054 ms    00 sec 945 ms    05

000    0580290            00 sec 109 ms    00 sec 890 ms    10
001    0580290            00 sec 123 ms    00 sec 876 ms    12

000    0560280            00 sec 179 ms    00 sec 820 ms    17
001    0540270            00 sec 239 ms    00 sec 760 ms    23

Do I have to create load on one or both cpu cores? Do I have to pass particular
options? And if I just have to run it, how long should I run it?

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (37 preceding siblings ...)
  2010-11-01 10:49 ` bugzilla-daemon
@ 2010-11-01 13:42 ` bugzilla-daemon
  2010-11-01 17:43 ` bugzilla-daemon
                   ` (20 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-01 13:42 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #36 from vyncere <vyncere@gmail.com>  2010-11-01 13:42:47 ---
Hi everyone, Hi Thomas,

Here some result on my Thinkpad T410, Intel Core i5 520 M.


* 2.6.32.15 (Kernel Reference with functionnal cpufreq)
- Boot params : None

# cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc hpet acpi_pm
# cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc

# While CPU is idling : cpufreq-aperf
CPU    Average freq(KHz)    Time in C0    Time in Cx    C0 percentage
000    1824000            00 sec 067 ms    00 sec 932 ms    06
001    1392000            00 sec 007 ms    00 sec 992 ms    00
002    1272000            00 sec 010 ms    00 sec 989 ms    01
003    1488000            00 sec 005 ms    00 sec 994 ms    00

000    1656000            00 sec 052 ms    00 sec 947 ms    05
001    2232000            00 sec 016 ms    00 sec 983 ms    01
002    1272000            00 sec 009 ms    00 sec 990 ms    00
003    1464000            00 sec 005 ms    00 sec 994 ms    00

000    1248000            00 sec 026 ms    00 sec 973 ms    02
001    1992000            00 sec 043 ms    00 sec 956 ms    04
002    1272000            00 sec 011 ms    00 sec 988 ms    01
003    1488000            00 sec 006 ms    00 sec 993 ms    00

# While kernel is compiling (make -j 3) : cpufreq-aperf

CPU     Average freq(KHz)       Time in C0      Time in Cx      C0 percentage
000    2664000            00 sec 997 ms    00 sec 002 ms    99
001    2664000            00 sec 512 ms    00 sec 487 ms    51
002    2664000            00 sec 812 ms    00 sec 187 ms    81
003    2664000            00 sec 876 ms    00 sec 123 ms    87

000    2664000            00 sec 771 ms    00 sec 228 ms    77
001    2664000            00 sec 857 ms    00 sec 142 ms    85
002    2664000            00 sec 814 ms    00 sec 185 ms    81
003    2664000            00 sec 731 ms    00 sec 268 ms    73

000    2664000            00 sec 446 ms    00 sec 553 ms    44
001    2664000            00 sec 885 ms    00 sec 114 ms    88
002    2664000            00 sec 962 ms    00 sec 037 ms    96
003    2664000            00 sec 990 ms    00 sec 009 ms    99 

# cpufreq-info
current policy: frequency should be within 1.20 GHz and 2.40 GHz.









* 2.6.36 (+ 2 Patches HW_COORD, SHARED_TYPE)
- Boot params : None

# cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc hpet acpi_pm 
# cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc

# While CPU is idling : cpufreq-aperf

CPU    Average freq(KHz)    Time in C0    Time in Cx    C0 percentage
000    1200000            00 sec 066 ms    00 sec 933 ms    06
001    1224000            00 sec 038 ms    00 sec 961 ms    03
002    1368000            00 sec 002 ms    00 sec 997 ms    00
003    1320000            00 sec 002 ms    00 sec 997 ms    00

000    1200000            00 sec 055 ms    00 sec 944 ms    05
001    1224000            00 sec 033 ms    00 sec 966 ms    03
002    1344000            00 sec 002 ms    00 sec 997 ms    00
003    1272000            00 sec 001 ms    00 sec 998 ms    00

000    1224000            00 sec 057 ms    00 sec 942 ms    05
001    1224000            00 sec 033 ms    00 sec 966 ms    03
002    1392000            00 sec 002 ms    00 sec 997 ms    00
003    1344000            00 sec 001 ms    00 sec 998 ms    00

# While kernel is compiling (make -j 3) : cpufreq-aperf

CPU     Average freq(KHz)       Time in C0      Time in Cx      C0 percentage
000    1176000            00 sec 585 ms    00 sec 414 ms    58
001    1176000            00 sec 719 ms    00 sec 280 ms    71
002    1200000            00 sec 825 ms    00 sec 174 ms    82
003    1176000            00 sec 951 ms    00 sec 048 ms    95

000    1200000            00 sec 874 ms    00 sec 125 ms    87
001    1176000            00 sec 864 ms    00 sec 135 ms    86
002    1200000            00 sec 776 ms    00 sec 223 ms    77
003    1200000            00 sec 586 ms    00 sec 413 ms    58

000    1176000            00 sec 903 ms    00 sec 096 ms    90
001    1200000            00 sec 841 ms    00 sec 158 ms    84
002    1200000            00 sec 682 ms    00 sec 317 ms    68
003    1176000            00 sec 702 ms    00 sec 297 ms    70

# cpufreq-info
current policy: frequency should be within 1.20 GHz and 1.20 GHz.










* 2.6.36 (+ 3 Patches HW_COORD, SHARED_TYPE, HW_ALL)
- Boot params : None

# cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc hpet acpi_pm
# cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc

# While CPU is idling : cpufreq-aperf

CPU    Average freq(KHz)    Time in C0    Time in Cx    C0 percentage
000    1224000            00 sec 053 ms    00 sec 946 ms    05
001    1248000            00 sec 022 ms    00 sec 977 ms    02
002    1320000            00 sec 002 ms    00 sec 997 ms    00
003    1344000            00 sec 002 ms    00 sec 997 ms    00

000    1224000            00 sec 061 ms    00 sec 938 ms    06
001    1272000            00 sec 018 ms    00 sec 981 ms    01
002    1344000            00 sec 002 ms    00 sec 997 ms    00
003    1344000            00 sec 003 ms    00 sec 996 ms    00

000    1224000            00 sec 060 ms    00 sec 939 ms    06
001    1248000            00 sec 015 ms    00 sec 984 ms    01
002    1416000            00 sec 002 ms    00 sec 997 ms    00
003    1368000            00 sec 002 ms    00 sec 997 ms    00

# While kernel is compiling (make -j 3) : cpufreq-aperf

CPU    Average freq(KHz)    Time in C0    Time in Cx    C0 percentage
000    1200000            00 sec 101 ms    00 sec 898 ms    10
001    1200000            00 sec 079 ms    00 sec 920 ms    07
002    1200000            00 sec 201 ms    00 sec 798 ms    20
003    1200000            00 sec 828 ms    00 sec 171 ms    82

000    1200000            00 sec 112 ms    00 sec 887 ms    11
001    1200000            00 sec 515 ms    00 sec 484 ms    51
002    1200000            00 sec 006 ms    00 sec 993 ms    00
003    1200000            00 sec 528 ms    00 sec 471 ms    52

000    1200000            00 sec 567 ms    00 sec 432 ms    56
001    1200000            00 sec 275 ms    00 sec 724 ms    27
002    1176000            00 sec 253 ms    00 sec 746 ms    25
003    1176000            00 sec 120 ms    00 sec 879 ms    12

# cpufreq-info
current policy: frequency should be within 1.20 GHz and 1.20 GHz.










* 2.6.36 (+ 4 Patches HW_COORD, SHARED_TYPE, HW_ALL, HW_STATISTICS)
- Boot params for patch 4 : acpi_cpufreq.disable_average=1

# dmesg | grep cpufreq
acpi-cpufreq: average (aperf/mperf) accounting disabled by user

# cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc hpet acpi_pm
# cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc

# While CPU is idling : cpufreq-aperf

CPU    Average freq(KHz)    Time in C0    Time in Cx    C0 percentage
000    1200000            00 sec 084 ms    00 sec 915 ms    08
001    1248000            00 sec 016 ms    00 sec 983 ms    01
002    1368000            00 sec 011 ms    00 sec 988 ms    01
003    1344000            00 sec 003 ms    00 sec 996 ms    00

000    1224000            00 sec 056 ms    00 sec 943 ms    05
001    1224000            00 sec 059 ms    00 sec 940 ms    05
002    1320000            00 sec 010 ms    00 sec 989 ms    01
003    1296000            00 sec 004 ms    00 sec 995 ms    00

000    1224000            00 sec 054 ms    00 sec 945 ms    05
001    1224000            00 sec 033 ms    00 sec 966 ms    03
002    1368000            00 sec 010 ms    00 sec 989 ms    01
003    1368000            00 sec 003 ms    00 sec 996 ms    00

# While kernel is compiling (make -j 3) : cpufreq-aperf

CPU     Average freq(KHz)       Time in C0      Time in Cx      C0 percentage
000    1176000            00 sec 815 ms    00 sec 184 ms    81
001    1200000            00 sec 532 ms    00 sec 467 ms    53
002    1176000            00 sec 997 ms    00 sec 002 ms    99
003    1200000            00 sec 997 ms    00 sec 002 ms    99

000    1200000            00 sec 501 ms    00 sec 498 ms    50
001    1200000            00 sec 731 ms    00 sec 268 ms    73
002    1176000            00 sec 997 ms    00 sec 002 ms    99
003    1200000            00 sec 997 ms    00 sec 002 ms    99

000    1176000            00 sec 714 ms    00 sec 285 ms    71
001    1176000            00 sec 889 ms    00 sec 110 ms    88
002    1176000            00 sec 934 ms    00 sec 065 ms    93
003    1176000            00 sec 778 ms    00 sec 221 ms    77 

# cpufreq-info
current policy: frequency should be within 1.20 GHz and 1.20 GHz. 










It's very interesting. With the old good 2.6.32 kernel (with working cpufreq),
while CPU is idling, according to cpufreq-aperf, the clock speeds fluctuate
between 1.20GHz to 1.80GHz, sometimes up to 2.40GHz. Hummmm... it's not very
good for power saving... It may explains why my CPU is always near 50°C. It's
slightly better with 2.6.36 kernel. (Thanks to Intel Idle maybe ?! I don't
know.) 

I don't know if it's really the true clock speeds since my conky monitor always
shows me the 4 virtual cores at 1.2 GHz... But I think that cpufreq-aperf is
more accurate than everything else. cpufreq-info always report a 1.20GHz max
limit.

In my case, the problem is not solved. With the 3 different kernel
configurations (2.6.36 + patches), with high CPU loads, clock speeds still
remain at the lowest state. Ironically, cpufreq-aperf shows that frequencies
never exceed 1.2OGHz at full load, contrary to idle time ! It's an upside-down
world...

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (38 preceding siblings ...)
  2010-11-01 13:42 ` bugzilla-daemon
@ 2010-11-01 17:43 ` bugzilla-daemon
  2010-11-01 18:03 ` bugzilla-daemon
                   ` (19 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-01 17:43 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #37 from Thomas Renninger <trenn@suse.de>  2010-11-01 17:43:25 ---
vyncere: Your problem is different. Could it be that 
cat /sys/devices/system/cpu/cpu0/cpufreq/bios_limit does not show max freq?
Then it is related to:
https://bugzilla.kernel.org/show_bug.cgi?id=14771
But in contrast to Peter's problem it's BIOS related (and the root cause may be
different and related to ACPI).
If above (bios_limit) is true, best update your BIOS, check related BIOS
options, if processor.ignore_ppc=1 workarounds and BIOS fiddling doesn't help,
please open a new bug and assign it to the ACPI component.

Peter: Your CPU (counters: tsc, aperf, mperf) is/are broken.
Heinz may have a similar problem and if this is more common, a getavg check
could be added whether the values are far away from min/max and getavg is not
considered anymore then. As this is a hotpath, this could be implemented in a
similar check as TSC is checked at boot up, e.g. test 3 times over 100ms
whether getavg is inside ~min/~max limits, if not don't use it.
If this normally never happens it might not be worth it and just the module
param could be added -> Waiting for a test from Heinz, either the boot param
and/or a runtime timer check should be added.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (39 preceding siblings ...)
  2010-11-01 17:43 ` bugzilla-daemon
@ 2010-11-01 18:03 ` bugzilla-daemon
  2010-11-01 18:16 ` bugzilla-daemon
                   ` (18 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-01 18:03 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #38 from vyncere <vyncere@gmail.com>  2010-11-01 18:03:04 ---
Some results with :

- acpi_cpufreq.disable_average=1 clocksource=hpet

and

- acpi_cpufreq.disable_average=1 clocksource=hpet acpi_skip_timer_override







* 2.6.36 (+ 4 Patches HW_COORD, SHARED_TYPE, HW_ALL, HW_STATISTICS)
- Boot params for patch 4 : acpi_cpufreq.disable_average=1
- Boot params : clocksource=hpet

# dmesg | grep cpufreq
acpi-cpufreq: average (aperf/mperf) accounting disabled by user

# cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc hpet acpi_pm
# cat /sys/devices/system/clocksource/clocksource0/current_clocksource
hpet

# While CPU is idling : cpufreq-aperf

CPU    Average freq(KHz)    Time in C0    Time in Cx    C0 percentage
000    2688000            00 sec 033 ms    00 sec 966 ms    03
001    1944000            00 sec 017 ms    00 sec 982 ms    01
002    1776000            00 sec 001 ms    00 sec 998 ms    00
003    1536000            00 sec 002 ms    00 sec 997 ms    00

000    2496000            00 sec 028 ms    00 sec 971 ms    02
001    1656000            00 sec 032 ms    00 sec 967 ms    03
002    1536000            00 sec 018 ms    00 sec 981 ms    01
003    1416000            00 sec 003 ms    00 sec 996 ms    00

000    2712000            00 sec 036 ms    00 sec 963 ms    03
001    2064000            00 sec 014 ms    00 sec 985 ms    01
002    1416000            00 sec 001 ms    00 sec 998 ms    00
003    1392000            00 sec 001 ms    00 sec 998 ms    00

000    2688000            00 sec 034 ms    00 sec 965 ms    03
001    1920000            00 sec 017 ms    00 sec 982 ms    01
002    1584000            00 sec 001 ms    00 sec 998 ms    00
003    1536000            00 sec 002 ms    00 sec 997 ms    00

000    2712000            00 sec 041 ms    00 sec 958 ms    04
001    1968000            00 sec 023 ms    00 sec 976 ms    02
002    1512000            00 sec 008 ms    00 sec 991 ms    00
003    1560000            00 sec 004 ms    00 sec 995 ms    00

000    2784000            00 sec 040 ms    00 sec 959 ms    04
001    1896000            00 sec 022 ms    00 sec 977 ms    02
002    1416000            00 sec 008 ms    00 sec 991 ms    00
003    1488000            00 sec 003 ms    00 sec 996 ms    00

000    2736000            00 sec 042 ms    00 sec 957 ms    04
001    2160000            00 sec 018 ms    00 sec 981 ms    01
002    1512000            00 sec 007 ms    00 sec 992 ms    00
003    1608000            00 sec 003 ms    00 sec 996 ms    00

# While kernel is compiling (make -j 3) : cpufreq-aperf
CPU     Average freq(KHz)       Time in C0      Time in Cx      C0 percentage
000     2640000                 00 sec 767 ms   00 sec 232 ms   76
001     2304000                 00 sec 960 ms   00 sec 039 ms   96
002     2112000                 00 sec 641 ms   00 sec 358 ms   64
003     2256000                 00 sec 886 ms   00 sec 113 ms   88

000     2640000                 00 sec 709 ms   00 sec 290 ms   70
001     2208000                 00 sec 969 ms   00 sec 030 ms   96
002     2016000                 00 sec 677 ms   00 sec 322 ms   67
003     2160000                 00 sec 881 ms   00 sec 118 ms   88

000     2640000                 00 sec 844 ms   00 sec 155 ms   84
001     2400000                 00 sec 937 ms   00 sec 062 ms   93
002     2328000                 00 sec 695 ms   00 sec 304 ms   69
003     2376000                 00 sec 866 ms   00 sec 133 ms   86

000     2640000                 00 sec 882 ms   00 sec 117 ms   88
001     2424000                 00 sec 756 ms   00 sec 243 ms   75
002     2400000                 00 sec 674 ms   00 sec 325 ms   67
003     2472000                 00 sec 991 ms   00 sec 008 ms   99

# cpufreq-info

current policy: frequency should be within 1.20 GHz and 1.20 GHz.


















* 2.6.36 (+ 4 Patches HW_COORD, SHARED_TYPE, HW_ALL, HW_STATISTICS)
- Boot params for patch 4 : acpi_cpufreq.disable_average=1
- Boot params : clocksource=hpet acpi_skip_timer_override

# dmesg | grep cpufreq
acpi-cpufreq: average (aperf/mperf) accounting disabled by user

# cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc hpet acpi_pm
# cat /sys/devices/system/clocksource/clocksource0/current_clocksource
hpet

# dmesg | grep apic

ACPI: Core revision 20100702
Setting APIC routing to flat
..TIMER: vector=0x30 apic1=0 pin1=0 apic2=-1 pin2=-1
..MP-BIOS bug: 8254 timer not connected to IO-APIC
...trying to set up timer (IRQ0) through the 8259A ...
..... (found apic 0 pin 0) ...
....... works.

# dmesg | grep intel_idle

intel_idle: MWAIT substates: 0x1120
intel_idle: v0.4 model 0x25
intel_idle: lapic_timer_reliable_states 0xffffffff
ACPI: acpi_idle yielding to intel_idle

# While CPU is idling : cpufreq-aperf 

CPU    Average freq(KHz)    Time in C0    Time in Cx    C0 percentage
000    2184000            00 sec 030 ms    00 sec 969 ms    03
001    1320000            00 sec 038 ms    00 sec 961 ms    03
002    1392000            00 sec 032 ms    00 sec 967 ms    03
003    1536000            00 sec 002 ms    00 sec 997 ms    00

000    1752000            00 sec 031 ms    00 sec 968 ms    03
001    1680000            00 sec 051 ms    00 sec 948 ms    05
002    1488000            00 sec 015 ms    00 sec 984 ms    01
003    1272000            00 sec 015 ms    00 sec 984 ms    01

000    2640000            00 sec 034 ms    00 sec 965 ms    03
001    1632000            00 sec 027 ms    00 sec 972 ms    02
002    1392000            00 sec 003 ms    00 sec 996 ms    00
003    1464000            00 sec 002 ms    00 sec 997 ms    00

000    2712000            00 sec 038 ms    00 sec 961 ms    03
001    1776000            00 sec 020 ms    00 sec 979 ms    02
002    1464000            00 sec 002 ms    00 sec 997 ms    00
003    1488000            00 sec 003 ms    00 sec 996 ms    00

# cpufreq-info

current policy: frequency should be within 1.20 GHz and 1.20 GHz.





In all cases, cpufreq-info always reports a 1.20GHz max limit, but
cpufreq-aperf the opposite ; During high loads, frequencies manage to jump up
to 2.64GHz. It took the same amount of time to compile the kernel than with my
reference kernel (2.6.32) and CPU reached 72°C. I can conclude that CPU states
reported by cpufreq-info are wrong. (My conky desktop monitor applet does not
seem to read info from cpufreq-aperf or equivalent, because it always reports
frequencies at 1.20GHz like cpufreq-info).

With hpet clocksource, average frequencies at idle time are very high, higher
than with tsc clocksource (which are in the first hand strangely high for idle
time), specially for the CPU 0, (2,7 GHz for 3% load !!!), but it does not seem
to raise the temperature. I expect to have all my virtual cores at 1.20GHz (or
less) at idle time, but even with my reference kernel, this ideal state was
never reached.

With acpi_skip_timer_override parameter, the kernel reports at boot time some
verbosities related to IO-APIC.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (40 preceding siblings ...)
  2010-11-01 18:03 ` bugzilla-daemon
@ 2010-11-01 18:16 ` bugzilla-daemon
  2010-11-02  7:09 ` bugzilla-daemon
                   ` (17 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-01 18:16 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #39 from vyncere <vyncere@gmail.com>  2010-11-01 18:16:46 ---
Thomas :

* 2.6.32.15 (Kernel Reference with functionnal cpufreq)
- Boot params : None

--> No /sys/devices/system/cpu/cpu0/cpufreq/bios_limit

* 2.6.36 (+ 4 Patches HW_COORD, SHARED_TYPE, HW_ALL, HW_STATISTICS)
- Boot params for patch 4 : acpi_cpufreq.disable_average=1
- Boot params : clocksource=hpet

# cat /sys/devices/system/cpu/cpu0/cpufreq/bios_limit
1199000

So, 1.20GHz.

Thank you. I will investigate on the BIOS/ACPI track.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (41 preceding siblings ...)
  2010-11-01 18:16 ` bugzilla-daemon
@ 2010-11-02  7:09 ` bugzilla-daemon
  2010-11-02  8:59 ` bugzilla-daemon
                   ` (16 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-02  7:09 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #40 from Peter Ganzhorn <peter.ganzhorn@googlemail.com>  2010-11-02 07:09:00 ---
Seems like I am lucky in picking the broken CPUs...the Core2 Quad Q9550 I have
also has a minor flaw, it has broken temperature sensors - those are stuck at
one temperature, no matter how much load I put on it :-P
BTW, I never overclocked or fiddled with any of those CPUs and bought them
unused and new...

So, do you need anything else from me?
If it helps, with the patched kernel CPU frequency scaling tends to be a little
slower to ramp the freq up and scales down a little earlier compared to the
unpatched kernel with lowered up_threshold. So system responsiveness is a bit
worse. You notice that, but its not too bad, it definitely WORKS as it's
supposed to. I'm now probably saving a bit of power compared to before.

Thanks for looking into this again! If you want me to try more sophisticated
patches just let me know.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (42 preceding siblings ...)
  2010-11-02  7:09 ` bugzilla-daemon
@ 2010-11-02  8:59 ` bugzilla-daemon
  2010-11-02  9:03 ` bugzilla-daemon
                   ` (15 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-02  8:59 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #41 from Thomas Renninger <trenn@suse.de>  2010-11-02 08:59:37 ---
> So, do you need anything else from me?
Eh, yes, I found something else:
You have constant_tsc feature, but not non-stop tsc feature.
CPU idle drivers mark tsc unstable if C-states are used. If C-states also
affect aperf/mperf timers, they must not used as well in this case.
Can you try: idle=halt boot param
Argh, intel idle driver does not recognize idle= overrides.
Please try idle=halt with another patch I'll provide.
Or try both params (then the patch should not be needed):
intel_idle.max_cstate=0 idle=halt
Does cpufreq-aperf then give you sane average frequency values in the range of
min/max freq and cpufreq subsystem works as expected?

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (43 preceding siblings ...)
  2010-11-02  8:59 ` bugzilla-daemon
@ 2010-11-02  9:03 ` bugzilla-daemon
  2010-11-03 20:42 ` bugzilla-daemon
                   ` (14 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-02  9:03 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #42 from Thomas Renninger <trenn@suse.de>  2010-11-02 09:03:25 ---
Created an attachment (id=35852)
 --> (https://bugzilla.kernel.org/attachment.cgi?id=35852)
intel_idle: Do not load if user overrides idle function via idle= boot param

This try only makes sense if cpuidle driver got used before and the machine
supports C2 and deeper sleep states, you can check (without idle=halt override)
via:
cat /sys/devices/system/cpu/cpu*/cpuidle/state*/name
whether your machine uses deeper sleep states.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (44 preceding siblings ...)
  2010-11-02  9:03 ` bugzilla-daemon
@ 2010-11-03 20:42 ` bugzilla-daemon
  2010-11-04  8:15 ` bugzilla-daemon
                   ` (13 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-03 20:42 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #43 from Thomas Renninger <trenn@suse.de>  2010-11-03 20:42:44 ---
> CPU idle drivers mark tsc unstable if C-states are used. If C-states also
> affect aperf/mperf timers, they must not used as well in this case.
That is wrong, sorry about that:
aperf/mperf timers always stop in C-states, but the resulting average frequency
during C0 (not idle) must still be correct.
Also the fact that only one CPU is affected very much points to defect HW.
As long as this only shows up one machine it's also not worth adding extra code
to the kernel. If you want to workaround this in self-built kernels, best is
you remove the aperfmperf capabilties line from
arch/x86/kernel/include/asm/cpufeatures.h as it's also used in the scheduler.
Still waiting some days from feedback from Heinz before closing this one
"documented". As it's a totally different CPU it's probably something else.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (45 preceding siblings ...)
  2010-11-03 20:42 ` bugzilla-daemon
@ 2010-11-04  8:15 ` bugzilla-daemon
  2010-11-04  8:41 ` bugzilla-daemon
                   ` (12 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-04  8:15 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #44 from Peter Ganzhorn <peter.ganzhorn@googlemail.com>  2010-11-04 08:15:11 ---
> Also the fact that only one CPU is affected very much points to defect HW.

I got only one CPU, but two CPU cores - by CPU you meant "CPU core", right?

> remove the aperfmperf capabilties line from
arch/x86/kernel/include/asm/cpufeatures.h

I'll try that with a vanilla kernel to see if I run into other problems with
that. (That will remove the capability system-wide, not only for the cpufreq
subsystem, right?)

If it helps: I installed Windows XP on another partition on my affected laptop,
frequency scaling works just fine there...

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (46 preceding siblings ...)
  2010-11-04  8:15 ` bugzilla-daemon
@ 2010-11-04  8:41 ` bugzilla-daemon
  2010-11-08 12:32 ` bugzilla-daemon
                   ` (11 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-04  8:41 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #45 from Thomas Renninger <trenn@suse.de>  2010-11-04 08:41:33 ---
Another possibility that does not require kernel rebuilding is to use the
userspace governor and a cpufreq userspace daemon. I expect they do not use
aperf/mperf.
Here is a nice overview of packages that are out there:
http://www.gentoo.org/doc/en/power-management-guide.xml
Other CPU Speed Utilities

> by CPU you meant "CPU core", right?
Yes.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (47 preceding siblings ...)
  2010-11-04  8:41 ` bugzilla-daemon
@ 2010-11-08 12:32 ` bugzilla-daemon
  2010-11-08 12:49 ` bugzilla-daemon
                   ` (10 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-08 12:32 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #46 from Peter Ganzhorn <peter.ganzhorn@googlemail.com>  2010-11-08 12:32:34 ---
Concerning the changes to arch/x86/kernel/include/asm/cpufeatures.h:

I can't just kill the line
#define X86_FEATURE_APERFMPERF (3*32+28) /* APERFMPERF */
since this will prevent the kernel from being compiled.
For now I changed the line to
#define X86_FEATURE_APERFMPERF (6*32+11) /* APERFMPERF */
which changes the checked feature to SSE5 instead of AMPERF - my CPU does not
support SSE5 and this should report a non-set bit.

Not the most elegant solution and of course not really portable to newer cpus,
but it sure does the trick.
Do you have a better idea to hard-code that feature to zero in the kernel code?
Is there a CPUID bit that's 0 by default for all processors?

I looked at related kernel code, but I don't think there's an easier or better
fix at another place in the code, as the way I choose to go makes the feature
reported as non-present for all code in the kernel.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (48 preceding siblings ...)
  2010-11-08 12:32 ` bugzilla-daemon
@ 2010-11-08 12:49 ` bugzilla-daemon
  2010-11-09 17:38 ` bugzilla-daemon
                   ` (9 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-08 12:49 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #47 from Thomas Renninger <trenn@suse.de>  2010-11-08 12:49:05 ---
> since this will prevent the kernel from being compiled.
Yep, you would need to touch the other places where it gets evaluated as well.

Easiest for you should be to take the patch you verified working from comment
#34 (with the boot/module param described somewhere...):
acpi-cpufreq: Provide param to disable average HW statistics for broken timers
If you want to make sure scheduler also does not make use of the timers you can
additionally add something like:

struct cpuinfo_x86 *c;
...
c = &cpu_data(cpu);
clear_cpu_cap(c, X86_FEATURE_APERFMPERF);

This is an ugly hack, but should work for you.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (49 preceding siblings ...)
  2010-11-08 12:49 ` bugzilla-daemon
@ 2010-11-09 17:38 ` bugzilla-daemon
  2010-11-10 11:18 ` bugzilla-daemon
                   ` (8 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-09 17:38 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #48 from Peter Ganzhorn <peter.ganzhorn@googlemail.com>  2010-11-09 17:38:09 ---
I modified to patch like you suggested:

+    if (cpu_has(c, X86_FEATURE_APERFMPERF)) {
+        if (disable_average) {
+            printk(KERN_INFO "acpi-cpufreq: average (aperf/mperf) "
+                   "accounting disabled by user\n");
+            clear_cpu_cap(c, X86_FEATURE_APERFMPERF);
+        }
+        else
+            acpi_cpufreq_driver.getavg = cpufreq_get_measured_perf;
+    }

Will the scheduler adapt to the changed cpu features with only that single
change? Since the sched code probably gets initialized earlier, I wonder if it
will notice the change.
Anyways, the system feels a bit more responsive with the modification to the
patch, but that might be a psychologic deception since I know that I made that
change...

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (50 preceding siblings ...)
  2010-11-09 17:38 ` bugzilla-daemon
@ 2010-11-10 11:18 ` bugzilla-daemon
  2010-11-10 12:51 ` bugzilla-daemon
                   ` (7 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-10 11:18 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #49 from vyncere <vyncere@gmail.com>  2010-11-10 11:17:50 ---
Hi all,

Thank you very much Thomas for your hint. As you suggested me to check the BIOS
limit (which was 1.20 GHz in my case), this morning I set in my BIOS for all
modes (AC/DC Power + Battery) the "Performance" profile, instead of
"Power-saving" one.

Now the BIOS limit is 2.40GHz, and cpufreq manage to do his job, without any
patches (2.6.36).

Thank you very much again, tracking this bug was very instructive. ^^

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (51 preceding siblings ...)
  2010-11-10 11:18 ` bugzilla-daemon
@ 2010-11-10 12:51 ` bugzilla-daemon
  2011-07-31 17:58 ` bugzilla-daemon
                   ` (6 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2010-11-10 12:51 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702


Thomas Renninger <trenn@suse.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |DOCUMENTED




--- Comment #50 from Thomas Renninger <trenn@suse.de>  2010-11-10 12:51:11 ---
> Will the scheduler adapt to the changed cpu features with only that single
> change?
Yes, the only part I found using it always checks for:
if (has_cpu_cap(X86_FEATURE_APERFMPERF))
     use_it()
So unsetting the cap effectively disables usage there on the next schedule.
This may change in the future, as said it's a hack...
Perfect would be a boot param disbable_cpu_cap=xy, but as most of these caps
are evaluated early it's hard to implement.

vyncere: Looks like Linux works correctly according to your BIOS settings :)

Not sure whether I should set this invalid. I set it documented, if there are
more machines with broken aperf/mperf timers, they might find it and if this
should be a more common issue, it still can be thought of a fix/workaround for
the kernel.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (52 preceding siblings ...)
  2010-11-10 12:51 ` bugzilla-daemon
@ 2011-07-31 17:58 ` bugzilla-daemon
  2011-08-01  7:35 ` bugzilla-daemon
                   ` (5 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2011-07-31 17:58 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #51 from Len Brown <lenb@kernel.org>  2011-07-31 17:58:18 ---
> if there are more machines with broken aperf/mperf timers

Thomas,
In what way are the aperf/mperf timers broken on this box?

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (53 preceding siblings ...)
  2011-07-31 17:58 ` bugzilla-daemon
@ 2011-08-01  7:35 ` bugzilla-daemon
  2011-08-11 13:00 ` bugzilla-daemon
                   ` (4 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2011-08-01  7:35 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #52 from Thomas Renninger <trenn@suse.de>  2011-08-01 07:35:05 ---
There already seem to go something wrong with TSC at early boot:
Fast TSC calibration failed
TSC: PIT calibration matches HPET. 1 loops

Most interesting are comments 33, 34 and 35.
cpufreq-aperf (measuring the average freq using aperf/mperf) shows frequencies
around 500 MHz which is wrong (afaik the cpu only supports 800 and higher
freqs). That is the reason why the cpufreq subsystem, taking aperf values to
calculate the next frequency into account never raises the frequency.

Removing the cpufreq code to look at aperf/mperf values to calculate the next
desired frequency fixed the problem for Peter and the machine starts switching
frequencies as expected.

Be aware that vyncere's problem is something totally different, but that came
out later in the bug.

Just a guess: Could it be that the BIOS misconfigured some clock multiplier and
tsc and mperf are running to slow?
I didn't look at the rate tsc/mperf/aperf are really running at.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (54 preceding siblings ...)
  2011-08-01  7:35 ` bugzilla-daemon
@ 2011-08-11 13:00 ` bugzilla-daemon
  2011-08-12 13:20 ` bugzilla-daemon
                   ` (3 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2011-08-11 13:00 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702


David Tomaschik <david@systemoverlord.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |david@systemoverlord.com




--- Comment #53 from David Tomaschik <david@systemoverlord.com>  2011-08-11 12:59:49 ---
I believe I'm having a similar problem.  My hardware is a Dell Latitude E5420
with an i5-2520M CPU.  I have the latest Dell BIOS for this system.  I'm
currently on the Ubuntu kernel 2.6.38-10-generic, and after I resume from
suspend, CPU frequency scaling no longer works.  Before suspending,
cpufreq-aperf shows sane values.  Afterwards, it gives frequencies of about
625MHz:
cpufreq-aperf
CPU    Average freq(KHz)    Time in C0    Time in Cx    C0 percentage
000    0625250            00 sec 077 ms    00 sec 922 ms    07
001    0625250            00 sec 007 ms    00 sec 992 ms    00
002    0600240            00 sec 098 ms    00 sec 901 ms    09
003    0625250            00 sec 002 ms    00 sec 997 ms    00

I believe that, because of this, the cpufreq scaling won't bump things up. 
"That is the reason why the cpufreq subsystem, taking aperf values to
calculate the next frequency into account never raises the frequency."

Any idea why it would only occur after a suspend/resume cycle and what I can do
to fix the issue?

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (55 preceding siblings ...)
  2011-08-11 13:00 ` bugzilla-daemon
@ 2011-08-12 13:20 ` bugzilla-daemon
  2011-08-15 15:04 ` bugzilla-daemon
                   ` (2 subsequent siblings)
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2011-08-12 13:20 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #54 from David Tomaschik <david@systemoverlord.com>  2011-08-12 13:20:36 ---
An update on my post above.  Disabling TurboBoost in the BIOS seems to have
resolved the issue.  I wonder if TurboBoost somehow causes mis-reported aperf
statistics.

Interestingly enough, the ratios are the same as the turboboost ratio on this
CPU.  That is, 3.2GHz (Turbo)/2.5 GHz (Stock) == 800 MHz (Real minimum)/625 MHz
(reported minimum via aperf).  I don't know if it matters, just thought it was
notable.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (56 preceding siblings ...)
  2011-08-12 13:20 ` bugzilla-daemon
@ 2011-08-15 15:04 ` bugzilla-daemon
  2011-08-15 15:08 ` bugzilla-daemon
  2012-06-18 19:11 ` bugzilla-daemon
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2011-08-15 15:04 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #55 from Thomas Renninger <trenn@suse.de>  2011-08-15 15:04:25 ---
You could use
tools/power/x86/turbostat.c
from the latest mainline kernel and replace two lines:
print_counters(cnt_delta);
with
dump_cnt(cnt_delta);
and compare with/without turboboost.
You could also use tools/power/cpupower/ with debug option compile in
(Makefile) and the cpupower -d monitor -m Mperf
but this won't be that nicely formatted.

You may be able to disable turboboost at runtime via a MSR read, mask out a bit
and write the value back.
According to chapter:
14.3.2.2 OS Control of Opportunistic Processor Performance Operation
of Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 3A
the bit is bit 32 (starting from 0) of the IA32_PERF_CTL MSR (0199H) MSR
register.
You have to make sure msr driver is compiled in or as module (modprobe msr)
then you can use msr-tools:
rdmsr 0x199
will show you the 64 bit register.
If you boot with turboboost enabled you find bit 32 set otherwise unset.
If I haven't overseen something you can enable/disable turbo mode via:
IA32_PERF_CTL=`rdmsr 0x199`
# disable
wrmsr -a 0x199 $((~(1 << 32) & $IA32_PERF_CTL))
# enable
wrmsr -a 0x199 $(((1 << 32) | $IA32_PERF_CTL))
-a option only exists in latest msr-tools git version which can be found here:
git://git.kernel.org/pub/scm/utils/cpu/msr-tools/msr-tools.git

Something to play with..., hopefully you find out something pointing to the
root cause...

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (57 preceding siblings ...)
  2011-08-15 15:04 ` bugzilla-daemon
@ 2011-08-15 15:08 ` bugzilla-daemon
  2012-06-18 19:11 ` bugzilla-daemon
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2011-08-15 15:08 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702





--- Comment #56 from Thomas Renninger <trenn@suse.de>  2011-08-15 15:08:25 ---
You can verify whether turboboost is enabled/disabled by:
- utilizing one core:
  cat /dev/zero >/dev/null &
- run turbostat or "cpupower monitor -m Mperf"
  and double check average frequency of the utilized core whether it got
boosted

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

* [Bug 19702] i5-450M CPU gets stuck in low/lowest state
       [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
                   ` (58 preceding siblings ...)
  2011-08-15 15:08 ` bugzilla-daemon
@ 2012-06-18 19:11 ` bugzilla-daemon
  59 siblings, 0 replies; 60+ messages in thread
From: bugzilla-daemon @ 2012-06-18 19:11 UTC (permalink / raw)
  To: cpufreq

https://bugzilla.kernel.org/show_bug.cgi?id=19702


Len Brown <lenb@kernel.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |CLOSED




--- Comment #57 from Len Brown <lenb@kernel.org>  2012-06-18 19:11:20 ---
The issue reported by the original poster is gone.
Other people have come in and out of this bug report,
some leaving with their issue solved, some not.

If yours is not fixed, please open a new bug,
because this one is closed.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 60+ messages in thread

end of thread, other threads:[~2012-06-18 19:11 UTC | newest]

Thread overview: 60+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <bug-19702-12968@https.bugzilla.kernel.org/>
2010-10-04  6:42 ` [Bug 19702] i5-450M CPU gets stuck in low/lowest state bugzilla-daemon
2010-10-04  6:43 ` bugzilla-daemon
2010-10-04  6:44 ` bugzilla-daemon
2010-10-08  5:26 ` bugzilla-daemon
2010-10-08 12:59 ` bugzilla-daemon
2010-10-08 19:04 ` bugzilla-daemon
2010-10-08 19:06 ` bugzilla-daemon
2010-10-12 11:19 ` bugzilla-daemon
2010-10-14  5:56 ` bugzilla-daemon
2010-10-14  5:58 ` bugzilla-daemon
2010-10-14  9:11 ` bugzilla-daemon
2010-10-14  9:22 ` bugzilla-daemon
2010-10-14 15:20 ` bugzilla-daemon
2010-10-15 10:07 ` bugzilla-daemon
2010-10-15 10:12 ` bugzilla-daemon
2010-10-15 10:15 ` bugzilla-daemon
2010-10-15 17:52 ` bugzilla-daemon
2010-10-15 19:25 ` bugzilla-daemon
2010-10-15 19:37 ` bugzilla-daemon
2010-10-16  8:56 ` bugzilla-daemon
2010-10-16  9:19 ` bugzilla-daemon
2010-10-19  2:50 ` bugzilla-daemon
2010-10-19  3:12 ` bugzilla-daemon
2010-10-19  3:51 ` bugzilla-daemon
2010-10-19  3:52 ` bugzilla-daemon
2010-10-19  7:34 ` bugzilla-daemon
2010-10-19  9:40 ` bugzilla-daemon
2010-10-19 14:13 ` bugzilla-daemon
2010-10-19 22:47 ` bugzilla-daemon
2010-10-28 15:12 ` bugzilla-daemon
2010-10-28 15:13 ` bugzilla-daemon
2010-10-29 11:06 ` bugzilla-daemon
2010-10-29 12:14 ` bugzilla-daemon
2010-10-29 13:00 ` bugzilla-daemon
2010-10-29 15:49 ` bugzilla-daemon
2010-10-29 20:15 ` bugzilla-daemon
2010-10-29 20:19 ` bugzilla-daemon
2010-11-01 10:49 ` bugzilla-daemon
2010-11-01 13:42 ` bugzilla-daemon
2010-11-01 17:43 ` bugzilla-daemon
2010-11-01 18:03 ` bugzilla-daemon
2010-11-01 18:16 ` bugzilla-daemon
2010-11-02  7:09 ` bugzilla-daemon
2010-11-02  8:59 ` bugzilla-daemon
2010-11-02  9:03 ` bugzilla-daemon
2010-11-03 20:42 ` bugzilla-daemon
2010-11-04  8:15 ` bugzilla-daemon
2010-11-04  8:41 ` bugzilla-daemon
2010-11-08 12:32 ` bugzilla-daemon
2010-11-08 12:49 ` bugzilla-daemon
2010-11-09 17:38 ` bugzilla-daemon
2010-11-10 11:18 ` bugzilla-daemon
2010-11-10 12:51 ` bugzilla-daemon
2011-07-31 17:58 ` bugzilla-daemon
2011-08-01  7:35 ` bugzilla-daemon
2011-08-11 13:00 ` bugzilla-daemon
2011-08-12 13:20 ` bugzilla-daemon
2011-08-15 15:04 ` bugzilla-daemon
2011-08-15 15:08 ` bugzilla-daemon
2012-06-18 19:11 ` bugzilla-daemon

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.