From owner-freebsd-arch@FreeBSD.ORG Wed May 28 02:11:36 2003 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D9DC537B401 for ; Wed, 28 May 2003 02:11:36 -0700 (PDT) Received: from stork.mail.pas.earthlink.net (stork.mail.pas.earthlink.net [207.217.120.188]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3158243F3F for ; Wed, 28 May 2003 02:11:36 -0700 (PDT) (envelope-from tlambert2@mindspring.com) Received: from user-2ivfkad.dialup.mindspring.com ([165.247.209.77] helo=mindspring.com) by stork.mail.pas.earthlink.net with asmtp (SSLv3:RC4-MD5:128) (Exim 3.33 #1) id 19Kwy0-0003jj-00; Wed, 28 May 2003 02:11:28 -0700 Message-ID: <3ED47CAA.30B03B8E@mindspring.com> Date: Wed, 28 May 2003 02:08:58 -0700 From: Terry Lambert X-Mailer: Mozilla 4.79 [en] (Win98; U) X-Accept-Language: en MIME-Version: 1.0 To: Igor Sysoev References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-ELNK-Trace: b1a02af9316fbb217a47c185c03b154d40683398e744b8a4581dbb2020a7ccf73f2b9375a3d93cb3387f7b89c61deb1d350badd9bab72f9c350badd9bab72f9c cc: arch@freebsd.org Subject: Re: sendfile(2) SF_NOPUSH flag proposal X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 28 May 2003 09:11:37 -0000 Igor Sysoev wrote: > Really ? I think that on NetBSD, Darwin, and MacOS X I would get: > ----- > warning: implicit declaration of function `sendfile' I think on NetBSD and OpenBSD, a single search-engine query would show you three experimental implementations, all of which have the FreeBSD syntax. The Darwin/MacOS X is a no-brainer: someone will get around to it eventually; the big barrier is external mbufs, and those are really trivial to implement (IMO; I've done it on three separate occasions in different code bases, now). > On Solaris and Linux I will get: > ----- > too many arguments to function `sendfile' Yes, the argument lists aren't the same. AIX and MVS both have identical interfaces, though. > sendfile() is very and very unportable interface. I have no doubt that sendfile(2) will eventually be standardized by some well-intentioned standards body, and that the standard will not include implementation-bug-based flags definitions. > And #define can hide any flags. Code written that way is not portable, it has been ported. There is a big difference. Why are you so dead-set on adding crufty flags, when three people who have been in that code before (I back-ported the external mbuf code and sendfile to FreeBSD 4.2 and 4.3 at one point; Matt has lived in that code; Peter had his nose in for quite a while; etc.) say that it's broken, and the correct thing to do is to fix it, not add a bunch of kludge code to work around the bugs that shouldn't be there in the first place? -- Terry