From owner-freebsd-arch Wed Oct 4 0:50:43 2000 Delivered-To: freebsd-arch@freebsd.org Received: from netplex.com.au (adsl-63-207-30-186.dsl.snfc21.pacbell.net [63.207.30.186]) by hub.freebsd.org (Postfix) with ESMTP id A799637B503; Wed, 4 Oct 2000 00:50:41 -0700 (PDT) Received: from netplex.com.au (peter@localhost [127.0.0.1]) by netplex.com.au (8.11.0/8.9.3) with ESMTP id e947oaH19391; Wed, 4 Oct 2000 00:50:36 -0700 (PDT) (envelope-from peter@netplex.com.au) Message-Id: <200010040750.e947oaH19391@netplex.com.au> X-Mailer: exmh version 2.1.1 10/15/1999 To: Chuck Paterson Cc: Alfred Perlstein , John Baldwin , arch@FreeBSD.ORG, John Polstra , Daniel Eischen , Matt Dillon , Greg Lehey Subject: Re: Mutexes and semaphores In-Reply-To: <200010040727.e947RpH19302@netplex.com.au> Date: Wed, 04 Oct 2000 00:50:36 -0700 From: Peter Wemm Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Peter Wemm wrote: > Chuck Paterson wrote: > > Your right, not freeing these things ever does make things > > lots easier. > > > > Chuck > > In the freebsd case, this is the case. Zones are never cleaned up, and > certainly not unmapped. zfree() will however cause the first few bytes > to be clobbered as they are reused for the freelist. Actually, a final version is at: http://people.freebsd.org/~peter/getppid.diff This produces nice tight assembler code. The SMP reentrancy protection adds two instructions.. one cmp and one conditional branch which gets taken if there is a lost race. It hardly seems worth #ifdef'ing it (and it isn't ifdefed in the diff). This diff is missing is the MPSAFE flag for the getppid syscall, but thats trivial to add (for native syscalls and all other syscall vectors that call getppid directly). Cheers, -Peter -- Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au "All of this is for nothing if we don't go to the stars" - JMS/B5 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message