Date: Fri, 21 Nov 1997 16:41:59 -0500 From: Matthew Hunt <mph@pobox.com> To: Cliff Addy <fbsdlist@federation.addy.com> Cc: freebsd-questions@FreeBSD.ORG Subject: Re: Cyrix 6x86 lockup bug Message-ID: <19971121164159.44816@mph124.rh.psu.edu> In-Reply-To: <Pine.BSF.3.95q.971121145255.16218B-100000@federation.addy.com>; from Cliff Addy on Fri, Nov 21, 1997 at 02:54:26PM -0500 References: <Pine.BSF.3.95q.971121145255.16218B-100000@federation.addy.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Nov 21, 1997 at 02:54:26PM -0500, Cliff Addy wrote:
> I posted this message at the beginning of the week, but I don't recall it
> showing up and never saw an answer. Please forgive if this is a
> duplicate.
The solution is to include
options CPU_CYRIX_NO_LOCK
in your kernel config. However, there is a bug in the code at present.
I have just submitted a PR (i386/5121) on the subject. In the meantime,
apply the following patch with:
# cd /usr/src/sys/i386/i386/
# patch -p0 < patchfile
Then rebuild your kernel with the above option, install, and reboot.
The patch should apply cleanly against:
/usr/src/sys/i386/i386/initcpu.c:
$Id: initcpu.c,v 1.5.2.4 1997/10/17 08:29:01 kato Exp $
--- /usr/src/sys/i386/i386/initcpu.c Fri Oct 17 04:29:01 1997
+++ initcpu.c Fri Nov 21 16:18:20 1997
@@ -306,10 +306,10 @@
/* Initialize CCR1. */
#ifdef CPU_CYRIX_NO_LOCK
- write_cyrix_reg(CCR0, read_cyrix_reg(CCR0) | CCR1_NO_LOCK);
+ write_cyrix_reg(CCR1, read_cyrix_reg(CCR1) | CCR1_NO_LOCK);
#else
#ifdef FAILSAFE
- write_cyrix_reg(CCR0, read_cyrix_reg(CCR0) & ~CCR1_NO_LOCK);
+ write_cyrix_reg(CCR1, read_cyrix_reg(CCR1) & ~CCR1_NO_LOCK);
#endif
#endif
--
Matthew Hunt <mph@pobox.com> * Think locally, act globally.
http://mph124.rh.psu.edu/~hunt/pgp.key for PGP public key 0x67203349.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19971121164159.44816>
