cx_lowest and CPU usage

Andriy Gapon avg at
Mon Feb 11 21:33:26 UTC 2008

on 01/02/2008 18:05 Andriy Gapon said the following:
> on 29/01/2008 19:31 Nate Lawson said the following:
>> Andriy Gapon wrote:
>>> Report for 7.0-RC1 on quite old hardware: 440BX-based motherboard,
>>> 450Mhz Pentium III (Katmai).
>>> cx_supported claims to support C1, C2, C3. If I set cx_lowest to C3 it
>>> immediately gets backed out to C2 with a kernel message about too many
>>> short sleeps. But that's not a problem.
>>> There is a weird thing: if I change cx_lowest to C2 when the machine is
>>> completely idle, top shows that CPU usage for interrupts immediately
>>> jumps to almost 20%. Change cx_lowest to C1, CPU usage drops back to
>>> almost 0%.
>>> Is this normal ?
>>> If not, does this indicate some problem in idle routine or is this just
>>> incorrect statistics calculation ? Or maybe something with HW ?
>> Leave it at C1.  Apparently C2 and C3 don't work on your machine. 
>> That's understandable with older, non-laptop hw.
> BTW, about C3: it seems that I have PCI_DEVICE_82371AB_3,
> intpm0 at pci0:7:3: class=0x068000 card=0x00000000 chip=0x71138086 rev=0x02
> hdr=0x00
> But for some reason CPU_QUIRK_NO_C3 in acpi_cpu.c doesn't get reflected
> in cx_states.

Hmm, it seems that the quirk is only honored if you actually try to use
C3 state, but it doesn't exclude the state from the available states.
This is OK, but seems to be a little bit non-user-friendly.

Andriy Gapon

More information about the freebsd-acpi mailing list