From owner-freebsd-current Sun Mar 21 9:22:17 1999 Delivered-To: freebsd-current@freebsd.org Received: from apollo.backplane.com (apollo.backplane.com [209.157.86.2]) by hub.freebsd.org (Postfix) with ESMTP id BCED8151C2; Sun, 21 Mar 1999 09:22:16 -0800 (PST) (envelope-from dillon@apollo.backplane.com) Received: (from dillon@localhost) by apollo.backplane.com (8.9.3/8.9.1) id JAA13495; Sun, 21 Mar 1999 09:21:55 -0800 (PST) (envelope-from dillon) Date: Sun, 21 Mar 1999 09:21:55 -0800 (PST) From: Matthew Dillon Message-Id: <199903211721.JAA13495@apollo.backplane.com> To: Brian Feldman Cc: Alfred Perlstein , "John S. Dyson" , samit@usa.ltindia.com, commiters@FreeBSD.ORG, freebsd-current@FreeBSD.ORG Subject: Re: rfork() References: Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG :Hence the NEW flag RFSTACK. Why would this be a bad thing? This would keep :the old behavior and allow much nicer new behavior. I didn't suggest :changing the old behavior. This would just greatly simplify things so all of I think Richard Seaman has it right: the stack needs to be passed. Why don't we simply implement the linux clone()? It sounds to me that it would be trivial. :the assembly wouldn't be needed. Hmm... actually... if one were to mmap() a :stack and as soon as the rfork() returned movl newstack,%esp and whatnot, :wouldn't this be a pretty simple solution? No, because one of the processes may overrun the stack before the other one managed to return from rfork(). The child process cannot use the old stack at all. Matthew Dillon To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message