Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Dec 1998 10:23:27 -0800 (PST)
From:      Matthew Jacob <mjacob@feral.com>
To:        Bruce Evans <bde@zeta.org.au>
Cc:        freebsd-current@FreeBSD.ORG
Subject:   Re: Tape Driver Changes Proposed: Tape Early Warning Behaviour
Message-ID:  <Pine.LNX.4.04.9812141015040.2563-100000@feral-gw>
In-Reply-To: <199812141802.FAA09572@godzilla.zeta.org.au>

next in thread | previous in thread | raw e-mail | index | archive | help

> 
> I think it is a bug for write() to return -1 after sucessfully writing a
> short count.  physio() does everything right in this area, but write(),
> writev(), read() and readv() do everything wrong.
>...
> 
> Here `auio.uio_resid != cnt' is true if some i/o was done, and in that
> case I think we should return the amount done and discard the error code
> (for EIO the next i/o will presumably hit the error immediately and
> return EIO), but we only do this for a few types of errors (ones that
> don't occur for disks or tapes).
> 

Yes, it could be fixed in this way, I suppose, but I don't believe that an
error condition should be signalled- a signification condition that early
warning has been reached isn't an error- at least for tape drives. What is
it for other character devices?


> 
> >Down the road a little bit would be:
> >
> >	++ untangling the minor device as behaviour selector so that
> >	ioctl's would not have to be used to select compression.
> 
> This should be controversial :-).  Compression is another type of behaviour.

Yes, but we'll leave that one for another day...




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.LNX.4.04.9812141015040.2563-100000>