usb/114682: USB media-card reader unusable

Mikhail T. mi at aldan.algebra.com
Wed Jul 18 03:30:02 UTC 2007


>Number:         114682
>Category:       usb
>Synopsis:       USB media-card reader unusable
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    freebsd-usb
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Jul 18 03:30:01 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Mikhail T.
>Release:        FreeBSD 6.2-STABLE amd64
>Organization:
Virtual Estates, Inc.
>Environment:
System: FreeBSD aldan.algebra.com 6.2-STABLE FreeBSD 6.2-STABLE #2: Tue Jul 17 23:00:12 EDT 2007 root at aldan.algebra.com:/meow/obj/var/src/sys/SILVER-SMP amd64

>Description:

	I'm using a generic multi-standard media-card reader.
	Its several slots are identified at boot-time as:

da2 at umass-sim0 bus 0 target 0 lun 0
da2: <Generic USB SD Reader 1.00> Removable Direct Access SCSI-0 device 
da2: 40.000MB/s transfers
da2: Attempt to query device size failed: NOT READY, Medium not present
da3 at umass-sim0 bus 0 target 0 lun 1
da3: <Generic USB CF Reader 1.01> Removable Direct Access SCSI-0 device 
da3: 40.000MB/s transfers
da3: Attempt to query device size failed: NOT READY, Medium not present
da4 at umass-sim0 bus 0 target 0 lun 2
da4: <Generic USB SM Reader 1.02> Removable Direct Access SCSI-0 device 
da4: 40.000MB/s transfers
da4: Attempt to query device size failed: NOT READY, Medium not present
da5 at umass-sim0 bus 0 target 0 lun 3
da5: <Generic USB MS Reader 1.03> Removable Direct Access SCSI-0 device 
da5: 40.000MB/s transfers
da5: Attempt to query device size failed: NOT READY, Medium not present

	Fair enough -- at boot time the slots are all empty.
	However, when I then insert a card (SD) into the proper slot
	and try to mount /dev/da2s1 -- or even to `fdisk da2', the
	command hangs for A LONG time...

	Pressing Ctrl-T reveals, that the hang is inside `cbwait'.
	During this time, a number of errors are logged on the console:

umass0: BBB reset failed, TIMEOUT
umass0: BBB bulk-in clear stall failed, IOERROR
umass0: BBB bulk-out clear stall failed, IOERROR
umass0: BBB reset failed, IOERROR
umass0: BBB bulk-in clear stall failed, IOERROR
umass0: BBB bulk-out clear stall failed, IOERROR
umass0: BBB reset failed, IOERROR
umass0: BBB bulk-in clear stall failed, IOERROR
umass0: BBB bulk-out clear stall failed, IOERROR
umass0: BBB reset failed, IOERROR
umass0: BBB bulk-in clear stall failed, IOERROR
umass0: BBB bulk-out clear stall failed, IOERROR
umass0: BBB reset failed, IOERROR
umass0: BBB bulk-in clear stall failed, IOERROR
umass0: BBB bulk-out clear stall failed, IOERROR

	And the command fails eventually with "can't open device
	/dev/da2: Input/output error".

	The only way to get to the data, apparently, is to boot
	with the card inserted -- unacceptable in most cases :(

	I first observed this with the kernel from June 7, 2007.
	But I was using an EXTERNAL reader before then...

	The problem is still here with 6.2-stable from July 17th.

>How-To-Repeat:

>Fix:

	Use an EXTERNAL card-reader, and connect it with the card
	already inserted. This _may_ work...
>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-usb mailing list