system 20% busy at all times?
Fleuriot Damien
ml at my.gd
Tue Feb 19 10:21:21 UTC 2013
On Feb 19, 2013, at 11:16 AM, "Eggert, Lars" <lars at netapp.com> wrote:
> Hi,
>
> On Feb 19, 2013, at 10:54, Fleuriot Damien <ml at my.gd>
> wrote:
>> And indeed we find your answer here, acpi0 firing up a lot of interrupts.
>>
>> Don't you get any message about that in dmesg -a or /var/log/messages ?
>>
>> I'd expect something like "interrupt storm blabla… source throttled blabla.."
>
> nope. The only odd ACPI-related messages I see in dmesg are these:
>
> ACPI Error: [\134_SB_.PCI0.LPC0.BCMD] Namespace lookup failure, AE_NOT_FOUND (20130117/psargs-393)
> ACPI Error: Method parse/execution failed [\134_PR_.CPU0._OSC] (Node 0xfffffe0007630c00), AE_NOT_FOUND (20130117/psparse-560)
> ACPI Error: [\134_SB_.PCI0.LPC0.BCMD] Namespace lookup failure, AE_NOT_FOUND (20130117/psargs-393)
> ACPI Error: Method parse/execution failed [\134_PR_.CPU0._OSC] (Node 0xfffffe0007630c00), AE_NOT_FOUND (20130117/psparse-560)
> ACPI Error: Method parse/execution failed [\134_PR_.CPU0._PDC] (Node 0xfffffe0007630c40), AE_NOT_FOUND (20130117/psparse-560)
>
> Nothing in syslog.
>
>> From man 4 acpi , in /boot/loader.conf :
>> hint.acpi.0.disabled=1
>> Set this to 1 to disable all of ACPI. If ACPI has been disabled
>> on your system due to a blacklist entry for your BIOS, you can
>> set this to 0 to re-enable ACPI for testing.
>>
>> Any chance you could reboot the host with ACPI disabled ?
>
> If I do that, I get an early kernel crash:
>
> Loading 10.11.12.13/~elars/kernel/kernel:0x200000/7634255 0xb47d50/473552 0xbbb720/890736 Entry at 0x802746f0
> Closing network.
> Starting program at 0x802746f0
> GDB: no debug ports present
> KDB: debugger backends: ddb
> KDB: current backend: ddb
> panic: running without device atpic requires a local APIC
> cpuid = 0
> KDB: stack backtrace:
> kernel trap 12 with interrupts disabled
>
>
> Fatal trap 12: page fault while in kernel mode
> cpuid = 0; apic id = 00
> fault virtual address = 0x0
> fault code = supervisor read data, page not present
> instruction pointer = 0x20:0xffffffff805c2973
> stack pointer = 0x28:0xffffffff80c9a960
> frame pointer = 0x28:0xffffffff80c9aa80
> code segment = base 0x0, limit 0xfffff, type 0x1b
> = DPL 0, pres 1, long 1, def32 0, gran 1
> processor eflags = resume, IOPL = 0
> current process = 0 ()
> [ thread pid 0 tid 0 ]
> Stopped at 0xffffffff805c2973: movzbl (%rdi),%ecx
>
>
>> If that helps your CPU load, try setting this in /boot/loader.conf :
>> hw.acpi.verbose=1
>> Turn on verbose debugging information about what ACPI is doing.
>
> Done, but it doesn't really result in any additional messages:
>
> # dmesg | grep -i acpi
> Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
> ACPI APIC Table: <PTLTD CARNEGIE>
> acpi0: <PTLTD CARNEGIE> on motherboard
> acpi0: Power Button (fixed)
> cpu0: <ACPI CPU> on acpi0
> ACPI Error: [\134_SB_.PCI0.LPC0.BCMD] Namespace lookup failure, AE_NOT_FOUND (20130117/psargs-393)
> ACPI Error: Method parse/execution failed [\134_PR_.CPU0._OSC] (Node 0xfffffe0007630c00), AE_NOT_FOUND (20130117/psparse-560)
> ACPI Error: [\134_SB_.PCI0.LPC0.BCMD] Namespace lookup failure, AE_NOT_FOUND (20130117/psargs-393)
> ACPI Error: Method parse/execution failed [\134_PR_.CPU0._OSC] (Node 0xfffffe0007630c00), AE_NOT_FOUND (20130117/psparse-560)
> ACPI Error: Method parse/execution failed [\134_PR_.CPU0._PDC] (Node 0xfffffe0007630c40), AE_NOT_FOUND (20130117/psparse-560)
> cpu1: <ACPI CPU> on acpi0
> cpu2: <ACPI CPU> on acpi0
> cpu3: <ACPI CPU> on acpi0
> atrtc0: <AT realtime clock> port 0x70-0x71 irq 8 on acpi0
> attimer0: <AT timer> port 0x40-0x43,0x50-0x53 irq 0 on acpi0
> Timecounter "ACPI-fast" frequency 3579545 Hz quality 900
> acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0
> pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
> pci0: <ACPI PCI bus> on pcib0
> pcib1: <ACPI PCI-PCI bridge> at device 2.0 on pci0
> pci1: <ACPI PCI bus> on pcib1
> pcib3: <ACPI PCI-PCI bridge> at device 4.0 on pci0
> pci3: <ACPI PCI bus> on pcib3
> pcib4: <ACPI PCI-PCI bridge> mem 0xdeb00000-0xdeb1ffff irq 16 at device 0.0 on pci3
> pci4: <ACPI PCI bus> on pcib4
> pcib7: <ACPI PCI-PCI bridge> irq 5 at device 8.0 on pci4
> pci7: <ACPI PCI bus> on pcib7
> pcib29: <ACPI PCI-PCI bridge> irq 16 at device 28.0 on pci0
> pci29: <ACPI PCI bus> on pcib29
> pcib30: <ACPI PCI-PCI bridge> irq 16 at device 28.4 on pci0
> pci30: <ACPI PCI bus> on pcib30
> pcib31: <ACPI PCI-PCI bridge> irq 17 at device 28.5 on pci0
> pci31: <ACPI PCI bus> on pcib31
> pcib32: <ACPI PCI-PCI bridge> at device 30.0 on pci0
> pci32: <ACPI PCI bus> on pcib32
> acpi_button0: <Power Button> on acpi0
> uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
> uart1: <16550 or compatible> port 0x2f8-0x2ff irq 3 on acpi0
>
Jeez, I certainly hope people more knowledgeable than me about the kernel will be able to make something of all this.
What about a newly build kernel without the line "device acpi" and without the options ACPI_DEBUG ?
Hoping that this kernel:
1/ won't crash on boot
2/ will make the 20% cpu load and high interrupt rates disappear
More information about the freebsd-current
mailing list