From owner-cvs-src@FreeBSD.ORG  Thu Dec 18 06:07:16 2003
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 EE7EC16A4CE; Thu, 18 Dec 2003 06:07:15 -0800 (PST)
Received: from mail.pcnet.com (mail.pcnet.com [204.213.232.4])
	by mx1.FreeBSD.org (Postfix) with ESMTP
	id D447443D49; Thu, 18 Dec 2003 06:07:14 -0800 (PST)
	(envelope-from eischen@vigrid.com)
Received: from mail.pcnet.com (mail.pcnet.com [204.213.232.4])
	by mail.pcnet.com (8.12.10/8.12.1) with ESMTP id hBIE7DHx026834;
	Thu, 18 Dec 2003 09:07:13 -0500 (EST)
Date: Thu, 18 Dec 2003 09:07:13 -0500 (EST)
From: Daniel Eischen <eischen@vigrid.com>
X-Sender: eischen@pcnet5.pcnet.com
To: Bruce Evans <bde@zeta.org.au>
In-Reply-To: <20031218164341.J19119@gamplex.bde.org>
Message-ID: <Pine.GSO.4.10.10312180904220.23200-100000@pcnet5.pcnet.com>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
cc: cvs-src@FreeBSD.org
cc: src-committers@FreeBSD.org
cc: cvs-all@FreeBSD.org
cc: Nate Lawson <nate@root.org>
Subject: Re: cvs commit: src/lib/libc_r/uthread uthread_write.c
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: Thu, 18 Dec 2003 14:07:16 -0000

On Thu, 18 Dec 2003, Bruce Evans wrote:

> On Wed, 17 Dec 2003, Nate Lawson wrote:
> 
> > On Wed, 17 Dec 2003, Daniel Eischen wrote:
> > > On Wed, 17 Dec 2003, Nate Lawson wrote:
> > > > On Wed, 17 Dec 2003, Daniel Eischen wrote:
> > > > > Does this fix something other than bacula?
> > > >
> > > > Anyone else who expected this semantics.  I have no specific examples.
> > >
> > > I think it probably only pertinent to writing to tape devices
> > > where a 0 return means end of tape.  Otherwise you should
> 
> Do mean "writing to tape devices with a broken device driver that
> returns 0 to mean end of tape".  POSIX seems to be clear enough saying
> that write() returns -1 except on successful completion.  I don't
> believe write() with a nonzero count is successful if it can write
> nothing.

I think returning 0 to mean end-of-tape is an historical behavior.
We should probably be returning -1 and ENOSPC.

-- 
Dan Eischen