From owner-cvs-src@FreeBSD.ORG  Mon Mar  8 19:54:43 2004
Return-Path: <owner-cvs-src@FreeBSD.ORG>
Delivered-To: cvs-src@freebsd.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP
	id 3609216A4CE; Mon,  8 Mar 2004 19:54:43 -0800 (PST)
Received: from smtp01.syd.iprimus.net.au (smtp01.syd.iprimus.net.au
	[210.50.30.52])	by mx1.FreeBSD.org (Postfix) with ESMTP
	id 493F943D2F; Mon,  8 Mar 2004 19:54:42 -0800 (PST)
	(envelope-from tim@robbins.dropbear.id.au)
Received: from robbins.dropbear.id.au (210.50.204.98) by
	smtp01.syd.iprimus.net.au (7.0.024)
	id 402BA927008224D5; Tue, 9 Mar 2004 14:54:39 +1100
Received: by robbins.dropbear.id.au (Postfix, from userid 1000)
	id 2398C41A4; Tue,  9 Mar 2004 14:55:32 +1100 (EST)
Date: Tue, 9 Mar 2004 14:55:32 +1100
From: Tim Robbins <tjr@freebsd.org>
To: John Birrell <jb@cimlogic.com.au>
Message-ID: <20040309035532.GA88825@cat.robbins.dropbear.id.au>
References: <200403090245.i292j0a6035728@repoman.freebsd.org>
	<20040309032248.GA88649@cat.robbins.dropbear.id.au>
	<20040309143223.Q234@freebsd3.cimlogic.com.au>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20040309143223.Q234@freebsd3.cimlogic.com.au>
User-Agent: Mutt/1.4.1i
cc: cvs-src@freebsd.org
cc: John Birrell <jb@freebsd.org>
cc: src-committers@freebsd.org
cc: cvs-all@freebsd.org
Subject: Re: cvs commit: src/lib/libc/stdio _flock_stub.c local.h
X-BeenThere: cvs-src@freebsd.org
X-Mailman-Version: 2.1.1
Precedence: list
List-Id: CVS commit messages for the src tree <cvs-src.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/cvs-src>,
	<mailto:cvs-src-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/cvs-src>
List-Post: <mailto:cvs-src@freebsd.org>
List-Help: <mailto:cvs-src-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/cvs-src>,
	<mailto:cvs-src-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 09 Mar 2004 03:54:43 -0000

On Tue, Mar 09, 2004 at 02:32:23PM +1100, John Birrell wrote:

> On Tue, Mar 09, 2004 at 02:22:48PM +1100, Tim Robbins wrote:
> > Is this a useful behaviour to support? ORIENT needs to be kept as
> > simple as possible since it is invoked for every single stdio call.
> > The extra conditional may make a difference for getc() and putc()
> > in the single-threaded case.
> 
> If you were concerned about performance "for every single stdio call",
> the locking calls would never have been allowed into libc in the
> first place. In a single-threaded program they aren't required.

My concern here is that we are slowing down critical paths for the
sake of broken applications that grope around inside FILEs. Why do
we need to support this? Which applications require it, and why?


Tim