Date: Mon, 15 Nov 1999 09:36:16 -0800 (PST) From: Matthew Jacob <mjacob@feral.com> To: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net> Cc: current@FreeBSD.ORG Subject: Re: FreeBSD 4.0 SCSI Tape Driver Message-ID: <Pine.BSF.4.05.9911150931440.9192-100000@semuta.feral.com> In-Reply-To: <199911151715.JAA15320@gndrsh.dnsmgr.net>
next in thread | previous in thread | raw e-mail | index | archive | help
> > There seems to be a great amount of confusion about the 2 EOF marks on > tapes. It has nothing to do with physical EOT, even the 556BPI 1/2" > tape drives on an IBM 1401 can detect physical EOT. The problem is > with LOGICAL EOT, most tape drives do not have a logical EOT write > command, even modern drives. So when you overwrite a tape how do you > tell that you have gotten to the logical end of data, well, you write > 2 EOF marks. > > The other thing that causes lots of folks confusion here is that some > tape drives backspace over an EOF mark that is written, thus it gets > real fun to put 2 EOF marks on the tape. You have to mt eof, mt fsf, > mt eof. Yes, that *may* be a problem. Also, when you write two filemarks, as best as I can tell for some hardware, this is never able to be read back as two filemarks. > > Since you do not point out how we are suppose to detect logical EOT > on a tape I object to any elimination of dual EOF to indicate logical > EOT. > > > > There already is an ioctl (and control via mt(1)) to change the default > > eot model. There could very well also be a config option too. I'd like to > > make the 1 Filemark at EOT the default though. I'll have to fix tcopy, > > and I want to give some thought so that there are no compatibility > > and interchange problems, but if those concerns are adequately covered I > > think this is the right thing to do. > > 1 filemark can not be used for EOT, it is EOF, you can't tell if what you > read next is another file or not that may have been left by a previosly > longer usage on the tape. > > > > > So- let me know, either via this list or privately. > > Thanks in advance... > > Won't work, or would you care to explain how we are now suppose to detect > logical EOT? The driver detects EOT during reads. Subsequent reads from the user application return no data. A user application that detects a residual twice in a row knows it is at EOT. Nearly all other Unix systems work fine with this mechanism. 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.BSF.4.05.9911150931440.9192-100000>