Skip site navigation (1)Skip section navigation (2)
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>