Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 29 May 2006 12:57:23 +0400
From:      Yar Tikhiy <yar@comp.chem.msu.su>
To:        Kevin Oberman <oberman@es.net>
Cc:        njl@freebsd.org, freebsd-current@freebsd.org
Subject:   Re: Freeze due to performance_cx_lowest=LOW
Message-ID:  <20060529085723.GA98288@comp.chem.msu.su>
In-Reply-To: <20060528221154.7351845043@ptavv.es.net>
References:  <20060528142039.GA80613@comp.chem.msu.su> <20060528221154.7351845043@ptavv.es.net>

next in thread | previous in thread | raw e-mail | index | archive | help
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@ 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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060529085723.GA98288>