From owner-freebsd-current Thu Jul 23 18:55:09 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id SAA13727 for freebsd-current-outgoing; Thu, 23 Jul 1998 18:55:09 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from dyson.iquest.net (dyson.iquest.net [198.70.144.127]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id SAA13720 for ; Thu, 23 Jul 1998 18:55:07 -0700 (PDT) (envelope-from toor@dyson.iquest.net) Received: (from root@localhost) by dyson.iquest.net (8.8.8/8.8.8) id UAA03907; Thu, 23 Jul 1998 20:54:26 -0500 (EST) (envelope-from toor) Message-Id: <199807240154.UAA03907@dyson.iquest.net> Subject: Re: panic: page fault while in kernel mode - from gcc In-Reply-To: <199807230410.VAA14655@usr05.primenet.com> from Terry Lambert at "Jul 23, 98 04:10:14 am" To: tlambert@primenet.com (Terry Lambert) Date: Thu, 23 Jul 1998 20:54:26 -0500 (EST) Cc: toasty@home.dragondata.com, current@FreeBSD.ORG From: "John S. Dyson" Reply-To: dyson@iquest.net X-Mailer: ELM [version 2.4ME+ PL38 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Terry Lambert said: > > >> This seems to indicate that the new process's page directory either hasn't > > >> been allocated yet or went away for some reason. Apparantly one of several > > >> new bugs that John has left us with. > > >> > > > > > >Is there any reason why someone doesn't back out his last few batches of > > >large vm changes? Apparently he was half done with some of it, and what we > > >had before seemed more stable than what we have now. > > > > That may ultimately be what we have to do, but the fixes also fixed some > > serious 'leak' style problems with the Mach derived VM system, so I'd rather > > that we find the bugs and fix them rather than going back to the previous > > code. > > FreeBSD doesn't currently include the batch of patches that Elvind > saved and that John had in his home directory when it was removed, > does it? > > What is the behaviour with those patches added in? > At the end, I was mostly working on the restructuring of the LL stuff to support SMP as well as it could be with a monolithic kernel. Those patches might have some VM fixes in them, but since I left abruptly (for appropriate reasons) the experimental code is probably a little rough. I suggest that the VM traceback that was posted doesn't indicate a severe or subtile problem (other than in the sense of user-inconvienience.) The fix is likely easy, and discussing it by those who might understand the code, takes probably more energy than actually "just making it go away." I don't have a FreeBSD development environment anymore, so those who have one and understand how the code goes together should probably just fix it. (It appears to be a problem with (obviously) vm_map_copy_entry, and the pmap_copy code.) Since it is an unintentional page fault, it is likely a missing page table page. It is either a reference count problem, or a trivial code botch. Remember, that before filling a page table page, it is important that it exist!!! If the problem is being tickled too often, just disable pmap_copy until the problem can be fixed, which is only a code optimization, and the system will likely work fine without it (but without one of the important optimizations, temporarily.) Again, this is only off the top of my head -- I am busy with other kinds of kernel things for now. -- John | Never try to teach a pig to sing, dyson@iquest.net | it makes one look stupid jdyson@nc.com | and it irritates the pig. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message