Return to BSD News archive
Newsgroups: comp.os.386bsd.bugs Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!agate!howland.reston.ans.net!vixen.cso.uiuc.edu!sdd.hp.com!ncr-sd!sceard!mrm From: mrm@sceard.Sceard.COM (M.R.Murphy) Subject: FP exception problems and TEMPORARY FIX Message-ID: <1993Oct13.172919.18640@sceard.Sceard.COM> Keywords: FP problem FIX Reply-To: mrm@Sceard.COM (M.R.Murphy) Organization: The Mole and Badger Association of Northern San Diego County Date: Wed, 13 Oct 93 17:29:19 GMT Lines: 53 I have an older 386SX25/387SX and a 386SX16/387SX. Both exhibit really flakey behavior under 386bsd 0.1 (0.2.4) and FreeBSD-1.0-EPSILON. syslogd dies leaving core.syslogd, routed dies leaving core.routed, wierd stuff shows up on a command line whilst typing from an X-term on another machine. gcc dies when trying to build a new system, or make dies or the shell dies. Bus errors abound. This is really flake time. Remove 387SX and it works. hmmmm :-) The FP reports errors on IRQ 13. The following fix makes a system that works but it's really a hack (this diff is for 386bsd0.1 (0.2.4), but should be similar for FreeBSD 1.0-EPSILON): -----8<---- *** npx.c Wed Oct 13 09:59:37 1993 --- npx.c.v Wed Jun 30 22:32:37 1993 *************** *** 436,442 **** /* * Pass exception to process. */ - #ifndef NOSIGFPE if (ISPL(frame.if_cs) == SEL_UPL) { /* * Interrupt is essentially a trap, so we can afford to call --- 436,441 ---- *************** *** 479,485 **** */ psignal(npxproc, SIGFPE); } - #endif /* NOSIGFPE */ } /* --- 478,483 ---- -----8<---- To get a working system: 1) shutdown and remove the 387SX, 2) boot with only FP emulation, 3) define option NOSIGFPE in the configuration file 4) apply the patch above to npx.c to inhibit SIGFPE reporting 5) build and install the system. 6) shutdown, reinstall 387SX, and reboot Flakieness is now gone at the expense of no SIGFPE reporting. This poorly implemented fix hides the problem with IRQ 13 processing, but at least it lets the 387SX work. -- Mike Murphy mrm@Sceard.COM ucsd!sceard!mrm +1 619 598 5874