Subject: kern/37403: USB tape drive Illegal Requests for any use
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <jpeterson275@comcast.net>
List: netbsd-bugs
Date: 11/19/2007 09:20:00
>Number:         37403
>Category:       kern
>Synopsis:       USB tape drive Illegal Requests for any use
>Confidential:   no
>Severity:       non-critical
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Nov 19 09:20:00 +0000 2007
>Originator:     Jesse Peterson
>Release:        NetBSD/amd64 4.0_RC4
>Organization:
>Environment:
NetBSD localhost 4.0_RC4 NetBSD 4.0_RC4 (GENERIC) #0: Thu Nov  8 00:11:53 PST 2007  builds@wb28:/home/builds/ab/netbsd-4-0-RC4/amd64/200711080452Z-obj/home/builds/ab/netbsd-4-0-RC4/src/sys/arch/amd64/compile/GENERIC amd64
>Description:
This is an ATAPI Sony AIT-1 drive (SDX-420C) connected through a USB->ATAPI bridge in a LaCie enclosure.

When attempting to issue basic mt(1) commands such as rewind and offline etc. I typically get these errors:

# mt rewind
mt: /dev/nrst0: Invalid argument

Looking through the kernel messages these show up:

Nov 18 22:38:57 localhost /netbsd: st0(umass0:0:0:0):  Check Condition on CDB: 0x15 00 00 00 0c 00
Nov 18 22:38:57 localhost /netbsd: SENSE KEY:  Illegal Request
Nov 18 22:38:57 localhost /netbsd: ASC/ASCQ:  Invalid Field In Parameter List
Nov 18 22:38:57 localhost /netbsd: SKSV:  Error in Parameters, Offset 9
Nov 18 22:38:57 localhost /netbsd: 
Nov 18 22:38:57 localhost /netbsd: st0: cannot set selected mode

The same error happens for any command or any use (such as with tar, etc.) for this drive. It gets detected as such:

Nov 18 22:37:59 localhost /netbsd: umass0 at uhub4 port 2 configuration 2 interface 0
Nov 18 22:37:59 localhost /netbsd: 
Nov 18 22:38:00 localhost /netbsd: umass0: LaCie LaCie StudioDrive USB2, rev 2.00/11.06, addr 2
Nov 18 22:38:00 localhost /netbsd: umass0: using SCSI over Bulk-Only
Nov 18 22:38:00 localhost /netbsd: scsibus0 at umass0: 2 targets, 1 lun per target
Nov 18 22:38:05 localhost /netbsd: st0 at scsibus0 target 0 lun 0: <SONY, SDX-420C, 0103> tape removable
Nov 18 22:38:05 localhost /netbsd: st0: 
Nov 18 22:38:43 localhost /netbsd: density code 48, 512-byte blocks, write-enabled

uhub4 is an EHCI controller:

uhci0 at pci0 dev 16 function 0: VIA Technologies VT83C572 USB Controller (rev. 
0x81)
...
ehci0 at pci0 dev 16 function 4: VIA Technologies VT8237 EHCI USB Controller (re
v. 0x86)
ehci0: interrupting at ioapic0 pin 21 (irq 11)
ehci0: BIOS has given up ownership
ehci0: EHCI version 1.0
ehci0: companion controllers, 2 ports each: uhci0 uhci1 uhci2 uhci3
usb4 at ehci0: USB revision 2.0
uhub4 at usb4

NetBSD/amd64 4.0_RC4 (though have seen problem in 3.1 and 4.0_RC3, too, including i386):
NetBSD localhost 4.0_RC4 NetBSD 4.0_RC4 (GENERIC) #0: Thu Nov  8 00:11:53 PST 2007  builds@wb28:/home/builds/ab/netbsd-4-0-RC4/amd64/200711080452Z-obj/home/builds/ab/netbsd-4-0-RC4/src/sys/arch/amd64/compile/GENERIC amd64

I attempted and failed to turn on SCSIPI debugging to try and get further with this.
>How-To-Repeat:
Attempt to use in any way the above USB tape drive with NetBSD.
>Fix: