kern/108581: [sysctl] sysctl: hw.acpi.cpu.cx_lowest: Invalid argument

Bruce Cran bruce at cran.org.uk
Thu Mar 26 07:37:53 PDT 2009


On Thu, 26 Mar 2009 09:37:50 -0400
John Baldwin <jhb at freebsd.org> wrote:

> No, the code is doing things differently on purpose (though I'm not
> completely sure why).  For _CST it sets cpu_cx_count to the maximum
> Cx level supported by any CPU in the system.  For non-_CST it sets it
> to the maximum Cx level supported by all CPUs in the system.  I think
> it is correct for cpu_cx_count to always start at 0 and only be
> bumped up to a higher setting.  Setting it to 3 would be very wrong
> for the _CST case as I've seen CPUs that support C4.

From briefly reading through the specifications I'd assumed the maximum
power state was C3.  

I had thought the _CST block was wrong because in
acpi_cpu_global_cx_lowest_sysctl it validates the new value against
cpu_cx_count; if one CPU has a lower cx state than the others, then
won't this tell the other CPUs to use an unsupported state?

-- 
Bruce Cran


More information about the freebsd-acpi mailing list