Looks like a bug in the 7300 disk driver

<10000>Bill Lanky wfl at lznh.UUCP
Sat Jan 14 07:19:14 AEST 1989




If the 7300 raw disk driver always transferred blocks but other UNIX systems'
raw disks could transfer smaller units, you would have a "7300 device driver
bug".  However, the 7300 disk driver actually works the same way that raw
disks do in all other UNIX systems, so it cannot be called a 7300 bug.

This behavior of the UNIX raw disk driver is neither unknown nor undocumented;
ask any kernel guru, or see M. Bach's book "Design of the UNIX Operating
System" for example.  The raw driver brings you closer to the disk hardware
for potentially better performance, but being close to the hardware means
you have to become aware of the disk block size (which incidentally is NOT
always 512 bytes on every UNIX system.)  By designing the raw disk interface
in this way, the developers of UNIX have provided a means for low-level
disk access which is the same across all UNIX implementations, regardless
of whether they have intelligent or dumb hardware disk controllers.
(Note that write() and lseek() behave consistently, too).

In short, since it was designed and documented to do what it does,
it cannot be called a bug.  If some UNIX version had a security loophole
associated with this feature, the bug would be that the implementors
did not provide enough security checks when they coded it.

Bill Linke



More information about the Unix-pc.general mailing list