On Wed, 6 Jan 2010, Marti Raudsepp wrote:
On Mon, Jan 4, 2010 at 11:07 PM, Dimitrios Apostolou <jimis@gmx.net> 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