Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 28 Apr 1999 08:39:34 -0700 (PWT)
From:      Matthew Jacob <mjacob@feral.com>
To:        Joerg Wunsch <joerg_wunsch@uriah.heep.sax.de>, Juergen Lock <nox@jelal.kn-bremen.de>
Cc:        freebsd-scsi@FreeBSD.ORG
Subject:   Re: QIC tape problems on -stable (was: hanging `tar xfvR /dev/nrst0' process, can i debug it?)
Message-ID:  <Pine.LNX.4.04.9904280824090.24720-100000@feral.com>
In-Reply-To: <19990428091622.29861@uriah.heep.sax.de>

next in thread | previous in thread | raw e-mail | index | archive | help
> As Juergen Lock wrote:
> 
> >  Huh!??  Why on earth is it trying to write filemarks??  Good that the
> > tape was write protected...
> 
> Ouch!  It seems `mt rdhpos' and/or `mt rdspos' trashed my backup tape
> as well...  Both reported 0 (correctly, the tape was at BOT), but any
> attempt to `mt fsr' afterwards yielded a blank check.
> 
> :-(
> 

Sorry- I really hadn't parsed the previous message.

These are *amazingly* broken drives then. The SCSI specification says that
a write of *zero* filemarks is to flush any pending writes. You have to do
this when you do a read hardware position in order to avoid an ambiguity
in the spec as to the true position as affected by data in the tape drive
buffer. This is not an abstruse edge case in the SCSI spec. This is common
sense as well. I believe that the writers of QIC f/w should be sent to
Redmond for the rest of their miserable lives.

The only other time filemarks are written is when you explicitly do them
via the ioctl or at saclose time when SA_FLAG_TAPE_WRITTEN was set (which
is only set after a block I/O write of data).

There's a limited amount we can do to get around completely broken
hardware. I'm sorry you've got broken h/w here if it's doing this when it
receives a zero count. This hardware should be thrown out. Or don't try
use the read h/w position. This may sound offensive, but there it is. Or
buy a Siemens system where they're just as lackadaisical with specs and
tend to lose sales to real engineering.

-matt






To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-scsi" 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.9904280824090.24720-100000>