Return to BSD News archive
Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!elroy.jpl.nasa.gov!usc!howland.reston.ans.net!gatech!udel!newsserv.cs.sunysb.edu!stark.UUCP!stark!stark!gene From: stark!gene@newsserv.cs.sunysb.edu (Gene Stark) Newsgroups: comp.os.386bsd.bugs Subject: Re: [FreeBSD 1.0.2]: Frequent startup lock-up with XFree 2.0 Date: 20 Dec 93 08:57:52 Organization: Gene Stark's home system Lines: 38 Distribution: inet Message-ID: <STARK!GENE.93Dec20085752@stark.uucp> References: <2el89e$10g@keltia.frmug.fr.net> NNTP-Posting-Host: stark.uucp In-reply-to: roberto@keltia.frmug.fr.net's message of 14 Dec 1993 21:38:56 +0100 In article <2el89e$10g@keltia.frmug.fr.net> roberto@keltia.frmug.fr.net (Ollivier Robert) writes: > background : 486DX-33, 16 MB, AHA-1542B, 640 MB Micropolis, Fahrenheit VA/VLB > FreeBSD 1.0.2 with 'trap.c' patch, XFree86 2.0/S3 I'm not sure if this will address the specific problem you are having, but if the "trap.c" patch is the one I posted a few weeks ago, then it is pretty important for you to also install an additional patch described below. The problem is that the first patch fixes one thing, which then exposes another bug that will make your system unstable. The second patch fixes that instability. I didn't discover the second bug until after I had fixed the first one. Also, David Greenman has told me that he is working on integrating a rewritten pmap module into FreeBSD, so you should be aware that these patches may be replaced by totally new code in the next release of FreeBSD. For now, though, these patches do the job. - Gene Stark *** /usr/src/sys/i386/i386/trap.c Sat Nov 20 14:47:44 1993 --- trap.c Sat Dec 11 20:46:53 1993 *************** *** 347,352 **** --- 347,359 ---- */ if (nss > vm->vm_ssize) vm->vm_ssize = nss; + /* + * va could be a page table address, if the fault + * occurred from within copyout. In that case, + * we have to wire it. (EWS 12/11/93) + */ + if (ispt(va)) + vm_map_pageable(map, va, round_page(va+1), FALSE); va = trunc_page(vtopte(va)); /* for page table, increment wiring as long as not a page table fault as well */ --