Bug 19938

Summary: IDE tape drive (ast0) timeout too quick
Product: Base System Reporter: defouwj <defouwj>
Component: kernAssignee: Søren Schmidt <sos>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Unspecified   
Hardware: Any   
OS: Any   

Description defouwj 2000-07-15 01:20:03 UTC
Operations on the tape drive (ast0) time out after a very short period (25-30 seconds) even though the tape device is performing the operation properly.
For example, from past about 10MB on the 10GB(20GB) tape mt rewind will report "Input/output error".  The I/O error then causes the tape to be rewound no matter what it was supposed to do.  During this time the device returns "Device busy".
This happens on any command except reading and writing to the current position, which can make it difficult to use the tape drive.
Kernel messages:
ast0: TEST_UNIT_READY command timeout - resetting
ata1: resetting devices .. ata1-slave: timeout waiting for command=ef s=11 e=04
This fails:
mt -f /dev/nrast0 setspos 60000
But this works:
mt -f /dev/nrast0 setspos 20000
mt -f /dev/nrast0 setspos 40000
mt -f /dev/nrast0 setspos 60000
And then will fail if you do:
mt -f /dev/nrast0 rewind
Auto-rewinds by /dev/rast0 will also run into this problem.

How-To-Repeat: Fastest way:
mt -f /dev/nrast0 setspos 60000
Otherwise, write large enough amount of data (30MB) to tape and then rewind or use the auto-rewind device instead.
Comment 1 Sheldon Hearn freebsd_committer freebsd_triage 2000-07-17 18:18:49 UTC
Responsible Changed
From-To: freebsd-bugs->sos

Over to the IDE/ATA/ATAPI maintainer.
Comment 2 Søren Schmidt freebsd_committer freebsd_triage 2000-11-14 08:49:39 UTC
State Changed
From-To: open->closed

Fixed in 4.2 and later.