st ioctl documentation error (MT_ST_SYSV)
Hello. I'm trying to fix some bugs in a port of my company's proprietary tape backup software. Our software works flawlessly on most commercial UNIX platforms. When handling tape reads, we use one of two different subroutines for handling the positioning of the read-head after a read. On BSD-flavored systems (such as *BSD), we do more-or-less nothing, as after a read, the tape is spaced forward to the next filemark. On SysV flavored systems (like Solaris 8), we advance the filemark manually.
We have a problem on Linux, as it states in the st(4) manpage:
MT_ST_SYSV (Default: false)
When this option is enabled, the tape
devices use the SystemV semantics. Other
wise the BSD semantics are used. The most
important difference between the semantics
is what happens when a device used for
reading is closed: in SYSV semantics the
tape is spaced forward past the next file
mark if this has not happened while using
the device. In BSD semantics the tape posi
tion is not changed.
Which switches what we have defined as BSD and SYSV semantics. It states that Linux uses BSD semantics by default, and then says SYSV semantics are what we know are BSD semantics, and that BSD semantics are what we know as SYSV semantics. How do we know? BSD and Solaris' man pages on the subject contradict Linux's, and our software properly works on those
systems.
So, going by the description in the page on what the semantics are, we have defined Linux in our build system as using non-BSD style tape read semantics. This results in fsf errors.
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html