From owner-freebsd-questions Mon Dec 4 12:57:09 1995 Return-Path: owner-questions Received: (from root@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id MAA29225 for questions-outgoing; Mon, 4 Dec 1995 12:57:09 -0800 Received: from phaeton.artisoft.com (phaeton.Artisoft.COM [198.17.250.211]) by freefall.freebsd.org (8.6.12/8.6.6) with ESMTP id MAA29211 for ; Mon, 4 Dec 1995 12:56:54 -0800 Received: (from terry@localhost) by phaeton.artisoft.com (8.6.11/8.6.9) id NAA04324; Mon, 4 Dec 1995 13:54:31 -0700 From: Terry Lambert Message-Id: <199512042054.NAA04324@phaeton.artisoft.com> Subject: Re: Cyrix CPU kernel help To: buaas@wireless.net (Robert A. Buaas) Date: Mon, 4 Dec 1995 13:54:31 -0700 (MST) Cc: questions@freebsd.org In-Reply-To: <199512032317.PAA09817@wireless.net> from "Robert A. Buaas" at Dec 3, 95 03:17:57 pm X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 1386 Sender: owner-questions@freebsd.org Precedence: bulk > I'm having trouble with using a Cyrix 486DX2-80 CPU with the > 2.1.0-RELEASE kernel. It won't recompile the GENERIC kernel (random > error 1 stops), and halt/reboot complains about "keyboard restart > failed, halting CPU". When the system harddrive is moved to another > system, everything works fine (AMD CPU). When I set the options flag > "CYRIX_CACHE_WORKS", the kernel compile fails on trying to compile > locore.s at line 427 (statement is "andl $~(CR0_CD|CR0_NW),%eax" with > the message "Unimplemented segment type 6 in parse_operand"... > > Any suggestions from your locore isa wizards? Older mask designs for Cyrix (and TI) processors did not correctly support cache invalidation for memory locations written by other than the host processor (ie: bus mastering devices, like SCSI). It is an error to set "CYRIX_CACHE_WORKS" on these machines (or if you ask Cyrix, it's an error to use bus mastering devices, ever). The compilation failure you are having looks similar to one I had when I was first trying to integrate Jack Vogel's SMP patches into my "-current + Terry's patches" kernel. It turns out that this is the error you will get on a #define'd assembly macro with a space or tab following the "\" continuation character. Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.