From owner-freebsd-current@FreeBSD.ORG Wed Feb 4 02:53:40 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 940D716A4CF; Wed, 4 Feb 2004 02:53:40 -0800 (PST) Received: from mailout2.pacific.net.au (mailout2.pacific.net.au [61.8.0.85]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0488343D48; Wed, 4 Feb 2004 02:53:38 -0800 (PST) (envelope-from bde@zeta.org.au) Received: from mailproxy1.pacific.net.au (mailproxy1.pacific.net.au [61.8.0.86])i14ArX5O000528; Wed, 4 Feb 2004 21:53:33 +1100 Received: from gamplex.bde.org (katana.zip.com.au [61.8.7.246]) i14ArUt4009800; Wed, 4 Feb 2004 21:53:31 +1100 Date: Wed, 4 Feb 2004 21:53:30 +1100 (EST) From: Bruce Evans X-X-Sender: bde@gamplex.bde.org To: Robert Watson In-Reply-To: Message-ID: <20040204214426.U1469@gamplex.bde.org> References: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: =?ISO-8859-1?Q?Dag-Erling_Sm=F8rgrav?= cc: current@freebsd.org Subject: Re: Coalescing pipe allocation X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 Feb 2004 10:53:40 -0000 On Tue, 3 Feb 2004, Robert Watson wrote: > On Tue, 3 Feb 2004, Peter Edwards wrote: > > > I have certainly taken that at face value at least once when deciding on > > how to use (or not use) pipes. Is this portability issue so > > ridiculously out of date that the comment in the pipe(2) manpage should > > be removed, or at least toned down? It seems silly to incur the costs of > > implementation you've mentioned and then recommend that the feature not > > be used. > Well, I don't know so much about the portability issues, but I can say > that it seems silly to incur the costs if few applications take advantage > of the feature. Especially if the cost can be defered until the feature Pipes were originally made bidirectional partly because this feature was "free": % RCS file: /home/ncvs/src/sys/kern/uipc_syscalls.c,v % Working file: uipc_syscalls.c % head: 1.171 % ... % ---------------------------- % revision 1.11 % date: 1996/01/01 10:28:21; author: peter; state: Exp; lines: +3 -3 % Make pipe() return a set of bidirectional pipe fd's rather than one-way only % just like on SVR4. % % This has no effect on any current programs in our source, but makes % the use of SVR4 code a little easier. There is no code or implementation % cost in the kernel.. This two-line change merely sets the modes on the ends % of the pipes to be bidirectional. There are no other changes. % ---------------------------- This was before optimization made the implementation of pipes complicated. Bruce