Date: Mon, 29 Oct 2001 16:40:43 -0500 (EST) From: Garrett Wollman <wollman@khavrinen.lcs.mit.edu> To: julian@elischer.org Cc: arch@FreeBSD.org Subject: Re: syscall() ABI questions Message-ID: <200110292140.f9TLehw15955@khavrinen.lcs.mit.edu> In-Reply-To: <Pine.BSF.4.21.0110291255300.26174-100000@InterJet.elischer.org> References: <20011029151912.D14748@locore.ca>
next in thread | previous in thread | raw e-mail | index | archive | help
In article <Pine.BSF.4.21.0110291255300.26174-100000@InterJet.elischer.org> you write: >But the API for vfork forbids the child from doing a 'ret' after the vfork >returns.. if it does that, all bets are off.... you can do: vfork() in general doesn't work. The fact that it works on current FreeBSD platforms is just a coincidence. (It's effectively switching to a different stack in the child, which happens to be located in the same place as the existing stack. If there were a real alternate stack, vfork() would at least have a chance at being reliable, but this is impossible in the general case without help from the compiler.) IWBRNI we could implement the brand-spankin'-new posix_spawn() interface, which attempts to provide the benefits of vfork (in its normal usage pattern) without making assumptions about stack usage. -GAWollman -- Garrett A. Wollman | O Siem / We are all family / O Siem / We're all the same wollman@lcs.mit.edu | O Siem / The fires of freedom Opinions not those of| Dance in the burning flame MIT, LCS, CRS, or NSA| - Susan Aglukark and Chad Irschick To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200110292140.f9TLehw15955>