Subject: Re: Tapeboot problem SOLUTION
To: Greg A. Woods <woods@most.weird.com>
From: Erik E. Fair <fair@cesium.clock.org>
List: port-sun3
Date: 12/12/1995 02:54:55
At 21:00 12/11/95, Greg A. Woods wrote:

>The problem is definitely in the tape driver.  Any QIC driver should, by
>definition, fail write(2)s that are not a multiple of 512 bytes (since
>this is what the device expects).  In my recollection only AIX ever got
>this correct.  Some device drivers gratuitiously do the "conv=sync" for
>you, and I find that far more confusing and problematic in the end.  If
>you've got another the works right, I'll add it to my list!  ;-)

Is QIC really defined that way in the standard? In most older UNIX tape
systems that I've seen, if you use the character special device, you can
write a record of any size within the minima and maxima of the medium (i.e.
within what the driver and the device will allow - with the exception of
never-sufficiently-damned System V UNIXes, of course). With 9-track tapes,
the range was pretty wide (1 byte to 10's of K). It has always been the
block special devices that enforce some device specific block size (usually
512 bytes) or multiples thereof.

The trouble with speaking to a tape drive through the SCSI bus is that
unless the driver is aware of which tape standard a given drive is speaking
(e.g. 9-track, QIC, DAT, DLT, 8mm Helical Scan (Exabyte), IBM 3840, just to
name a few), how can it reasonably enforce a block size?

Erik Fair