From owner-cvs-sys Thu May 2 05:02:09 1996 Return-Path: owner-cvs-sys Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id FAA19582 for cvs-sys-outgoing; Thu, 2 May 1996 05:02:09 -0700 (PDT) Received: from Root.COM (implode.Root.COM [198.145.90.17]) by freefall.freebsd.org (8.7.3/8.7.3) with ESMTP id FAA19554 Thu, 2 May 1996 05:01:58 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by Root.COM (8.7.5/8.6.5) with SMTP id FAA11887; Thu, 2 May 1996 05:01:42 -0700 (PDT) Message-Id: <199605021201.FAA11887@Root.COM> X-Authentication-Warning: implode.Root.COM: Host localhost [127.0.0.1] didn't use HELO protocol To: Peter Wemm cc: CVS-committers@freefall.freebsd.org, cvs-all@freefall.freebsd.org, cvs-sys@freefall.freebsd.org Subject: Re: cvs commit: src/sys/kern kern_fork.c In-reply-to: Your message of "Thu, 02 May 1996 19:56:37 +0800." <199605021156.TAA00890@spinner.DIALix.COM> From: David Greenman Reply-To: davidg@Root.COM Date: Thu, 02 May 1996 05:01:41 -0700 Sender: owner-cvs-sys@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk >> Modified: sys/kern kern_fork.c >> This is a minimal change to fix the problem, it will probably be done >> better by reordering p_vmspace to be in the startzero section, but it >> becomes harder to validate then. > >Now that I think about it more, this may still not be enough.. If >the fork1() is interrupted while inserting the process onto the >allproc list, and the VM system walks the severed allproc list during >kernel growth, or interrupts a little later when the proc has been >inserted but before it's initialised, that would be just as bad. > >If the kernel traverses the allproc list during an interrupt (eg: network, >to allocate more clusters?) to grow the kernel, then all changes to >allproc may need to need to be spl protected.. The pmap_growkernel() function is only called to extend the kernel_map. The allocations that happen at interrupt time come out of the fixed-sized kmem_map and thus won't ever cause a "growkernel" operation. -DG David Greenman Core-team/Principal Architect, The FreeBSD Project