From owner-freebsd-smp Fri Dec 6 10:15:37 1996 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.4/8.8.4) id KAA04008 for smp-outgoing; Fri, 6 Dec 1996 10:15:37 -0800 (PST) Received: from spinner.DIALix.COM (root@spinner.DIALix.COM [192.203.228.67]) by freefall.freebsd.org (8.8.4/8.8.4) with ESMTP id KAA04001 for ; Fri, 6 Dec 1996 10:15:32 -0800 (PST) Received: from spinner.DIALix.COM (peter@localhost.DIALix.oz.au [127.0.0.1]) by spinner.DIALix.COM (8.8.4/8.8.4) with ESMTP id CAA19205; Sat, 7 Dec 1996 02:15:13 +0800 (WST) Message-Id: <199612061815.CAA19205@spinner.DIALix.COM> To: Tor Egge cc: smp@bluenose.na.tuns.ca, smp@freebsd.org Subject: Re: More info about fatal trap 12 In-reply-to: Your message of "Fri, 06 Dec 1996 18:28:05 +0100." <199612061728.SAA22564@pat.idt.unit.no> Date: Sat, 07 Dec 1996 02:15:12 +0800 From: Peter Wemm Sender: owner-smp@freebsd.org X-Loop: FreeBSD.org Precedence: bulk Tor Egge wrote: > A closer examination of the kernel dump shows that the first page fault > is from the user process /bin/sh. The call stack is [..] > The first access to the stack by the child process failed when trying > to save the return value from fork. > > The parent process was running on CPU #1, and the child process > was running on CPU #0. > > - Tor Egge Hmm!! The plot thickens! I noticed the failing pmap_enter was at 0xefbfd000 which is the first stack page already, but I wasn't sure if it was the initial creation, or if the stack had been paged out and was failing on pagein. Thank you! Confirmation of this is MOST useful! I had redone the fork implementation some time ago to support address space sharing for kernel supported user level threads. I have some bad memories about this code.. In fact, I have an idea that deserves a closer look... Cheers, -Peter