On Wed, 6 Jan 2010, Marti Raudsepp wrote:
On Mon, Jan 4, 2010 at 11:07 PM, Dimitrios Apostolou <jimis@xxxxxxx> wrote:
Using powertop I can see more than 100K wakeups/s (extra_timer_interrupt
is first on the list but I think it's irrelevant since it only shows about
100 wakeups), and the CPU is not going into C2 mode at all. Strangely
however the cpu is 99% idle, and top doesn't show "system" or "user" cpu
usage.
This sounds bad. Let me get this straight. "Wakeups-from-idle per
second" shows 100 000, but no large numbers show up under "Top causes
for wakeups"?
Can you post the contents of your /proc/interrupts and
/proc/timer_stats twice, taken within a few seconds difference?
cat /proc/timer_stats /proc/interrupts && echo && echo && sleep 2 && cat \
/proc/timer_stats /proc/interrupts
Timer Stats Version: v0.2
Sample period: 0.000 s
0 total events
CPU0
0: 79154 XT-PIC-XT timer
1: 1621 XT-PIC-XT i8042
2: 0 XT-PIC-XT cascade
3: 2 XT-PIC-XT
4: 3 XT-PIC-XT
5: 6 XT-PIC-XT au8810
6: 5 XT-PIC-XT floppy
7: 0 XT-PIC-XT parport0
8: 4 XT-PIC-XT rtc0
9: 4 XT-PIC-XT acpi
10: 2 XT-PIC-XT
11: 45870 XT-PIC-XT yenta, yenta, uhci_hcd:usb1
12: 82960 XT-PIC-XT i8042
14: 15309 XT-PIC-XT ata_piix
15: 0 XT-PIC-XT ata_piix
NMI: 0 Non-maskable interrupts
LOC: 0 Local timer interrupts
SPU: 0 Spurious interrupts
PMI: 0 Performance monitoring interrupts
PND: 0 Performance pending work
RES: 0 Rescheduling interrupts
CAL: 0 Function call interrupts
TLB: 0 TLB shootdowns
TRM: 0 Thermal event interrupts
THR: 0 Threshold APIC interrupts
MCE: 0 Machine check exceptions
MCP: 4 Machine check polls
ERR: 0
MIS: 0
Timer Stats Version: v0.2
Sample period: 0.000 s
0 total events
CPU0
0: 79271 XT-PIC-XT timer
1: 1622 XT-PIC-XT i8042
2: 0 XT-PIC-XT cascade
3: 2 XT-PIC-XT
4: 3 XT-PIC-XT
5: 6 XT-PIC-XT au8810
6: 5 XT-PIC-XT floppy
7: 0 XT-PIC-XT parport0
8: 4 XT-PIC-XT rtc0
9: 4 XT-PIC-XT acpi
10: 2 XT-PIC-XT
11: 45914 XT-PIC-XT yenta, yenta, uhci_hcd:usb1
12: 82960 XT-PIC-XT i8042
14: 15330 XT-PIC-XT ata_piix
15: 0 XT-PIC-XT ata_piix
NMI: 0 Non-maskable interrupts
LOC: 0 Local timer interrupts
SPU: 0 Spurious interrupts
PMI: 0 Performance monitoring interrupts
PND: 0 Performance pending work
RES: 0 Rescheduling interrupts
CAL: 0 Function call interrupts
TLB: 0 TLB shootdowns
TRM: 0 Thermal event interrupts
THR: 0 Threshold APIC interrupts
MCE: 0 Machine check exceptions
MCP: 4 Machine check polls
ERR: 0
MIS: 0
I have already compiled a minimal 2.6.31 and a 2.6.32 kernel and the
problem seems to be a regression introduced in the former. So I'm trying
to find time for a git bisection... Any other ideas?
Dimitris
Marti