On Wed, Feb 01, 2012 at 09:56:22AM +0000, Ian Clark wrote:
Yup, I think it's 0x15. Even checked with a printf in the above code
to be sure. :) (As I don't really know what I'm doing.)
However applying the above didn't seem to change anything.
The last time I checked, AMD did not have a BKDG ("bios and kernel
developer's guide") for family 15h yet, so I don't know about the
details of C1E on Bulldozers. Of course this is entirely NetBSD's fault,
as all C1E-problems are caused by the fact that C-states are not generally
supported, whatever their name may be.
When fiddling again last night I did notice the bios setting has 'on,
off and auto', is there any chance that 'on' could be causing the
above to be ignored?
Could be, but no idea.
(root:/usr2/src)# cvs diff sys/arch/x86/acpi/acpi_cpu_md.c
Index: sys/arch/x86/acpi/acpi_cpu_md.c
===================================================================
RCS file: /cvsroot/src/sys/arch/x86/acpi/acpi_cpu_md.c,v
retrieving revision 1.69
diff -r1.69 acpi_cpu_md.c
269a270
case 0x15:
Yes.
AS the problem can be addressed by flipping a setting I'm not worried
about it so please don't spend too much time, however I'm happy to try
stuff if you want help tracking it down.
Well, as I wrote above, we don't need to track it down or add more weird
quirks -- we simply need to support C-states. Unfortunately, this is easier
said than done (requires in-depth knowledge particularly about x86 timers,
which are kind of a mess in NetBSD ATM).
- Jukka.