Bug 25542
Summary: | high cpu load using the acpi module on thinkpad l512 | ||
---|---|---|---|
Product: | ACPI | Reporter: | Scott (outrageousfury) |
Component: | Power-Processor | Assignee: | acpi_power-processor |
Status: | CLOSED PATCH_ALREADY_AVAILABLE | ||
Severity: | high | CC: | acpi-bugzilla, lenb, rui.zhang |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 2.6.32-5-686(debian), 2.6.36.2(kernel.org) | Subsystem: | |
Regression: | No | Bisected commit-id: |
Description
Scott
2010-12-23 10:45:00 UTC
please attach the output of powertop, "cat /proc/interrupts", "grep . /sys/firmware/acpi/interrupts/*" Powertop: ------------------------------------------------------------------------------- Cn Avg residency P-states (frequencies) C0 (cpu running) ( 1.6%) 2.54 Ghz 0.0% polling 1.9ms ( 0.0%) 2.54 Ghz 0.0% C1 mwait 1.5ms ( 5.4%) 2.40 Ghz 0.0% C3 mwait 15.4ms (93.0%) 2.27 Ghz 0.0% 1199 Mhz 100.0% Wakeups-from-idle per second : 95.8 interval: 5.0s no ACPI power usage estimate available Top causes for wakeups: 55.4% ( 88.8) <kernel core> : hrtimer_start_range_ns (tick_sched_timer) 17.3% ( 27.8) <interrupt> : i915 14.5% ( 23.2) <interrupt> : acpi 3.6% ( 5.8) <kernel core> : hrtimer_start (tick_sched_timer) 2.5% ( 4.0) autocutsel : hrtimer_start_range_ns (hrtimer_wakeup) 1.1% ( 1.8) <kernel core> : clocksource_watchdog (clocksource_watchdog) 0.7% ( 1.2) <interrupt> : PS/2 keyboard/mouse/touchpad 0.7% ( 1.2) Xorg : mod_timer (i915_hangcheck_elapsed) 0.6% ( 1.0) sleep : hrtimer_start_range_ns (hrtimer_wakeup) 0.6% ( 1.0) <kernel core> : enqueue_task_rt (sched_rt_period_timer) 0.6% ( 1.0) Xorg : mod_timer (intel_gpu_idle_timer) 0.6% ( 1.0) ntpd : hrtimer_start_range_ns (posix_timer_fn) 0.5% ( 0.8) Xorg : queue_delayed_work (delayed_work_timer_fn) 0.2% ( 0.4) urxvt : schedule_timeout (process_timeout) 0.2% ( 0.4) Xorg : hrtimer_start_range_ns (hrtimer_wakeup) 0.2% ( 0.4) Xorg : mod_timer (intel_crtc_idle_timer) 0.1% ( 0.2) <interrupt> : eth0 0.1% ( 0.2) init : hrtimer_start_range_ns (hrtimer_wakeup) 0.1% ( 0.2) awk : schedule_timeout (process_timeout) ------------------------------------------------------------------------------- cat /proc/interrupts ------------------------------------------------------------------------------- CPU0 CPU1 CPU2 CPU3 0: 47 0 0 0 IO-APIC-edge timer 1: 70 74 76 74 IO-APIC-edge i8042 8: 0 0 0 1 IO-APIC-edge rtc0 9: 539 535 517 529 IO-APIC-fasteoi acpi 12: 239 236 237 235 IO-APIC-edge i8042 16: 7 6 6 7 IO-APIC-fasteoi ehci_hcd:usb1, mmc0, jmb38x_ms:slot0 22: 45 43 45 43 IO-APIC-fasteoi HDA Intel 23: 16 14 15 16 IO-APIC-fasteoi ehci_hcd:usb2 24: 0 0 0 0 HPET_MSI-edge hpet2 25: 0 0 0 0 HPET_MSI-edge hpet3 26: 0 0 0 0 HPET_MSI-edge hpet4 27: 0 0 0 0 HPET_MSI-edge hpet5 34: 25 18 20 24 PCI-MSI-edge eth0 35: 648 662 665 650 PCI-MSI-edge ahci 36: 865 865 872 875 PCI-MSI-edge i915 NMI: 0 0 0 0 Non-maskable interrupts LOC: 5643 5080 4769 4948 Local timer interrupts SPU: 0 0 0 0 Spurious interrupts PMI: 0 0 0 0 Performance monitoring interrupts PND: 0 0 0 0 Performance pending work RES: 86 70 112 67 Rescheduling interrupts CAL: 27 41 29 39 Function call interrupts TLB: 212 369 574 703 TLB shootdowns TRM: 0 0 0 0 Thermal event interrupts THR: 0 0 0 0 Threshold APIC interrupts MCE: 0 0 0 0 Machine check exceptions MCP: 2 2 2 2 Machine check polls ERR: 0 MIS: 0 ------------------------------------------------------------------------------- grep. /sys/firmware/acpi/interrupts/*: ------------------------------------------------------------------------------- /sys/firmware/acpi/interrupts/error: 0 /sys/firmware/acpi/interrupts/ff_gbl_lock: 0 enabled /sys/firmware/acpi/interrupts/ff_pmtimer: 0 invalid /sys/firmware/acpi/interrupts/ff_pwr_btn: 0 enabled /sys/firmware/acpi/interrupts/ff_rt_clk: 0 disabled /sys/firmware/acpi/interrupts/ff_slp_btn: 0 invalid /sys/firmware/acpi/interrupts/gpe00: 0 invalid /sys/firmware/acpi/interrupts/gpe01: 1 enabled /sys/firmware/acpi/interrupts/gpe02: 15 enabled /sys/firmware/acpi/interrupts/gpe03: 0 disabled /sys/firmware/acpi/interrupts/gpe04: 0 disabled /sys/firmware/acpi/interrupts/gpe05: 0 disabled /sys/firmware/acpi/interrupts/gpe06: 0 enabled /sys/firmware/acpi/interrupts/gpe07: 0 enabled /sys/firmware/acpi/interrupts/gpe08: 0 invalid /sys/firmware/acpi/interrupts/gpe09: 0 disabled /sys/firmware/acpi/interrupts/gpe0A: 0 invalid /sys/firmware/acpi/interrupts/gpe0B: 0 disabled /sys/firmware/acpi/interrupts/gpe0C: 0 disabled /sys/firmware/acpi/interrupts/gpe0D: 0 disabled /sys/firmware/acpi/interrupts/gpe0E: 0 disabled /sys/firmware/acpi/interrupts/gpe0F: 0 invalid /sys/firmware/acpi/interrupts/gpe10: 0 invalid /sys/firmware/acpi/interrupts/gpe11: 0 invalid /sys/firmware/acpi/interrupts/gpe12: 0 invalid /sys/firmware/acpi/interrupts/gpe13: 0 invalid /sys/firmware/acpi/interrupts/gpe14: 0 invalid /sys/firmware/acpi/interrupts/gpe15: 0 enabled /sys/firmware/acpi/interrupts/gpe16: 2541 enabled /sys/firmware/acpi/interrupts/gpe17: 0 invalid /sys/firmware/acpi/interrupts/gpe18: 0 invalid /sys/firmware/acpi/interrupts/gpe19: 0 invalid /sys/firmware/acpi/interrupts/gpe1A: 0 invalid /sys/firmware/acpi/interrupts/gpe1B: 0 invalid /sys/firmware/acpi/interrupts/gpe1C: 0 invalid /sys/firmware/acpi/interrupts/gpe1D: 0 enabled /sys/firmware/acpi/interrupts/gpe1E: 0 invalid /sys/firmware/acpi/interrupts/gpe1F: 0 invalid /sys/firmware/acpi/interrupts/gpe20: 0 disabled /sys/firmware/acpi/interrupts/gpe21: 0 invalid /sys/firmware/acpi/interrupts/gpe22: 0 invalid /sys/firmware/acpi/interrupts/gpe23: 0 invalid /sys/firmware/acpi/interrupts/gpe24: 0 invalid /sys/firmware/acpi/interrupts/gpe25: 0 disabled /sys/firmware/acpi/interrupts/gpe26: 0 invalid /sys/firmware/acpi/interrupts/gpe27: 0 invalid /sys/firmware/acpi/interrupts/gpe28: 0 invalid /sys/firmware/acpi/interrupts/gpe29: 0 invalid /sys/firmware/acpi/interrupts/gpe2A: 0 invalid /sys/firmware/acpi/interrupts/gpe2B: 0 invalid /sys/firmware/acpi/interrupts/gpe2C: 0 invalid /sys/firmware/acpi/interrupts/gpe2D: 0 invalid /sys/firmware/acpi/interrupts/gpe2E: 0 invalid /sys/firmware/acpi/interrupts/gpe2F: 0 invalid /sys/firmware/acpi/interrupts/gpe30: 0 invalid /sys/firmware/acpi/interrupts/gpe31: 0 invalid /sys/firmware/acpi/interrupts/gpe32: 0 invalid /sys/firmware/acpi/interrupts/gpe33: 0 invalid /sys/firmware/acpi/interrupts/gpe34: 0 invalid /sys/firmware/acpi/interrupts/gpe35: 0 invalid /sys/firmware/acpi/interrupts/gpe36: 0 invalid /sys/firmware/acpi/interrupts/gpe37: 0 invalid /sys/firmware/acpi/interrupts/gpe38: 0 invalid /sys/firmware/acpi/interrupts/gpe39: 0 invalid /sys/firmware/acpi/interrupts/gpe3A: 0 invalid /sys/firmware/acpi/interrupts/gpe3B: 0 invalid /sys/firmware/acpi/interrupts/gpe3C: 0 invalid /sys/firmware/acpi/interrupts/gpe3D: 0 invalid /sys/firmware/acpi/interrupts/gpe3E: 0 invalid /sys/firmware/acpi/interrupts/gpe3F: 0 invalid /sys/firmware/acpi/interrupts/gpe_all: 2557 /sys/firmware/acpi/interrupts/sci: 2556 /sys/firmware/acpi/interrupts/sci_not: 1 ------------------------------------------------------------------------------- Oops, sorry for not attaching them. is the interrupt info above from 2.6.32, or from 2.6.36? do you see the same when you run the latest linus git tree? yep, and a simple "sleep 10" makes a load of 0.06. hm it does seem to be better in the git tree, it does drop to 0.0 after a while. That interrupt info was on 2.6.32. it does seem to be better in the git tree, it does drop to 0.0 after a while. so you mean the high cpu load problem is gone in git tree, right? if yes, it seems that we can close this bug as the problem has already been fixed. Yep, everyone thanks a lot for helping:)! |