Re: Freeze due to performance_cx_lowest=LOW

From: Yar Tikhiy <yar_at_comp.chem.msu.su>
Date: Mon, 29 May 2006 12:57:23 +0400
On Sun, May 28, 2006 at 03:11:54PM -0700, Kevin Oberman wrote:
> > 
> > A while ago I installed CURRENT on my new home PC and noticed that
> > the system would hang hard at the boot time soon after setting
> > cx_lowest to C3 according to the LOW setting in /etc/defaults/rc.conf.
> > The last message on the console was each time: Mounting NFS file
> > systems:.  Setting performance_cx_lowest to HIGH made the problem
> > go away.
> > 
> > Now I've just tried again to return performance_cx_lowest to its
> > modern default setting in a fresh CURRENT and found that the bug
> > is still there.  Is it due to my ACPI HW being broken?  I'll be
> > glad to show relevant debug output from my ACPI if told how to get
> > it.  Thanks.
> 
> This problem has been discussed over on ACPI. It's a problem with the
> local APIC timer which does not run in C3 or lower. Nate is looking at a
> solution for the problem.
> 
> See his message on acpi_at_ on Sun, 07 May 2006 15:28:29 -0700.

It must be

  http://lists.freebsd.org/pipermail/freebsd-acpi/2006-May/002742.html

Right?

> The fixes are to either not use C3 (or C4 if it's available) or to
> disable APIC.
> 
> For those who are not reading closely, DO NOT confuse APIC with ACPI!
> They only look similar.
> 
> If the system is UP, there is no really no need for APIC.

Thanks for pointing me out.  FWIW, I tried different work-arounds
in my system and got the following results.

Set performance_cx_lowest to as high as C2 in rc.conf -- works.

Add hint.apic.0.disabled="1" to device.hints -- doesn't work, the
system still hangs.  I can't see apic mentioned in the dmesg output
irrespective of the setting, but it must be there, given the results
of the next test.

Remove device apic from the kernel completely -- the system won't
halt, but it may suffer data corruption: once syslogd complained
about wrong syntax in its config, which I hadn't touched of course.
(Syslogd starts soon after cx_lowest was set to C3.)  At last "cpu0:
too many short sleeps, backing off to C2" appears on the console,
and hw.acpi.cpu.cx_lowest goes up to C2 indeed.

Of course, I shouldn't rule out bugs in my hardware, it is quite
old, a plain vanilla AMD Athlon (Thunderbird) in an Epox EP-8K3AE
motherboard.

Nevertheless, given the problems other people have had, it might
be too early to have performance_cx_lowest=LOW as the _default_
setting.  ACPI is a rather special area with some skilled developers
working in it, and encouraging everyone else in this way to fix it
makes little sense IMHO.

-- 
Yar
Received on Mon May 29 2006 - 06:57:57 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:56 UTC