disconnect on one usb2.0 port corrupts the communication on the other

Heribert Eilmsteiner <[email protected]>
Newsgroups gmane.linux.usb.devel
Message-ID <[email protected]>
Hi
Today i notices a strange USB hang on my opensuse 10.3 installation.

"a disconnect on one usb2.0 port corrupts communication on the other"

How to reproduce:

1.	connect 2 memory -sticks
2a.	start dd if=<device_stick_1> of=/dev/null
2b.	during the transfer, remove stick 2.
immediately after removal the data transfer to the first
stick halts

tried with different linux-versions (2.6.22, 2.6.21 and 2.6.13) and
different motherboards.
(intel 855 /845  and AMD based) with  same result.
on some systems it is necessary to use a usb-cable extender (on the "unplug" stick)
to reproduce the problem,so i think the reason is an unhandled error in
the ehci-stack. After enabling USB_DEBUG I noticed an an XActErr in the current transfer
descriptor.

switching the ports to USB 1.1 (through bios or /sys/class/usb_hub/usb_hub/companion)
avoids the error, but is not satisfying solution.

Does anyone know of this error and/or of an available fix /patch /workarounds?
-
Heribert

problem  opensuse 10.3 (and all tested older versions)

cpu:	Celeron 2.0 		Intel 845 
	Celeron 1.5-mobile	Intel 855 
	AMD Geode 500	AMD chipset	

I attached a sample syslog protocol.
the victim is the Memory stick 128 MB on sdb.

Oct 17 23:05:19 000c6e7eddc5 kernel: usb 4-4.2: new high speed USB device using ehci_hcd and address 5
Oct 17 23:05:19 000c6e7eddc5 kernel: usb 4-4.2: new device found, idVendor=090c, idProduct=1000
Oct 17 23:05:19 000c6e7eddc5 kernel: usb 4-4.2: new device strings: Mfr=1, Product=2, SerialNumber=3
Oct 17 23:05:19 000c6e7eddc5 kernel: usb 4-4.2: Product: USB 2.0 Flash Drive
Oct 17 23:05:19 000c6e7eddc5 kernel: usb 4-4.2: Manufacturer: Super Talent Flash
Oct 17 23:05:19 000c6e7eddc5 kernel: usb 4-4.2: SerialNumber: 32000000000000000882
Oct 17 23:05:19 000c6e7eddc5 kernel: usb 4-4.2: configuration #1 chosen from 1 choice
Oct 17 23:05:19 000c6e7eddc5 kernel: scsi4 : SCSI emulation for USB Mass Storage devices
Oct 17 23:05:19 000c6e7eddc5 kernel: usb-storage: device found at 5
Oct 17 23:05:19 000c6e7eddc5 kernel: usb-storage: waiting for device to settle before scanning
Oct 17 23:05:20 000c6e7eddc5 kernel: scsi 4:0:0:0: Direct-Access     Flash/SM Super Talent 2.0 2040 PQ: 0 ANSI: 0 CCS
Oct 17 23:05:20 000c6e7eddc5 kernel: sd 4:0:0:0: [sdb] 252928 512-byte hardware sectors (129 MB)
Oct 17 23:05:20 000c6e7eddc5 kernel: sd 4:0:0:0: [sdb] Write Protect is off
Oct 17 23:05:20 000c6e7eddc5 kernel: sd 4:0:0:0: [sdb] Mode Sense: 43 00 00 00
Oct 17 23:05:20 000c6e7eddc5 kernel: sd 4:0:0:0: [sdb] Assuming drive cache: write through
Oct 17 23:05:20 000c6e7eddc5 kernel: sd 4:0:0:0: [sdb] 252928 512-byte hardware sectors (129 MB)
Oct 17 23:05:20 000c6e7eddc5 kernel: sd 4:0:0:0: [sdb] Write Protect is off
Oct 17 23:05:20 000c6e7eddc5 kernel: sd 4:0:0:0: [sdb] Mode Sense: 43 00 00 00
Oct 17 23:05:20 000c6e7eddc5 kernel: sd 4:0:0:0: [sdb] Assuming drive cache: write through
Oct 17 23:05:20 000c6e7eddc5 kernel:  sdb: sdb1
Oct 17 23:05:20 000c6e7eddc5 kernel: sd 4:0:0:0: [sdb] Attached SCSI removable disk
Oct 17 23:05:20 000c6e7eddc5 kernel: sd 4:0:0:0: Attached scsi generic sg2 type 0
Oct 17 23:05:20 000c6e7eddc5 kernel: usb-storage: device scan complete
Oct 17 23:05:21 000c6e7eddc5 hald: mounted /dev/sdb1 on behalf of uid 0
Oct 17 23:05:53 000c6e7eddc5 kernel: usb 4-3: new high speed USB device using ehci_hcd and address 6
Oct 17 23:05:53 000c6e7eddc5 kernel: usb 4-3: new device found, idVendor=13fe, idProduct=1a00
Oct 17 23:05:53 000c6e7eddc5 kernel: usb 4-3: new device strings: Mfr=1, Product=2, SerialNumber=3
Oct 17 23:05:53 000c6e7eddc5 kernel: usb 4-3: Product: DataTraveler 2.0
Oct 17 23:05:53 000c6e7eddc5 kernel: usb 4-3: Manufacturer: Kingston
Oct 17 23:05:53 000c6e7eddc5 kernel: usb 4-3: SerialNumber: 5B6A1B855850
Oct 17 23:05:53 000c6e7eddc5 kernel: usb 4-3: configuration #1 chosen from 1 choice
Oct 17 23:05:53 000c6e7eddc5 kernel: scsi5 : SCSI emulation for USB Mass Storage devices
Oct 17 23:05:53 000c6e7eddc5 kernel: usb-storage: device found at 6
Oct 17 23:05:53 000c6e7eddc5 kernel: usb-storage: waiting for device to settle before scanning
Oct 17 23:05:54 000c6e7eddc5 kernel: scsi 5:0:0:0: Direct-Access     Kingston DataTraveler 2.0 PMAP PQ: 0 ANSI: 0 CCS
Oct 17 23:05:55 000c6e7eddc5 kernel: sd 5:0:0:0: [sdc] 2015232 512-byte hardware sectors (1032 MB)
Oct 17 23:05:55 000c6e7eddc5 kernel: sd 5:0:0:0: [sdc] Write Protect is off
Oct 17 23:05:55 000c6e7eddc5 kernel: sd 5:0:0:0: [sdc] Mode Sense: 23 00 00 00
Oct 17 23:05:55 000c6e7eddc5 kernel: sd 5:0:0:0: [sdc] Assuming drive cache: write through
Oct 17 23:05:55 000c6e7eddc5 kernel: sd 5:0:0:0: [sdc] 2015232 512-byte hardware sectors (1032 MB)
Oct 17 23:05:55 000c6e7eddc5 kernel: sd 5:0:0:0: [sdc] Write Protect is off
Oct 17 23:05:55 000c6e7eddc5 kernel: sd 5:0:0:0: [sdc] Mode Sense: 23 00 00 00
Oct 17 23:05:55 000c6e7eddc5 kernel: sd 5:0:0:0: [sdc] Assuming drive cache: write through
Oct 17 23:05:55 000c6e7eddc5 kernel:  sdc: sdc1
Oct 17 23:05:55 000c6e7eddc5 kernel: sd 5:0:0:0: [sdc] Attached SCSI removable disk
Oct 17 23:05:55 000c6e7eddc5 kernel: sd 5:0:0:0: Attached scsi generic sg3 type 0
Oct 17 23:05:55 000c6e7eddc5 kernel: usb-storage: device scan complete
Oct 17 23:05:56 000c6e7eddc5 hald: mounted /dev/sdc1 on behalf of uid 0
Oct 17 23:06:08 000c6e7eddc5 kernel: usb 4-3: USB disconnect, address 6
Oct 17 23:06:08 000c6e7eddc5 hald[2170]: forcibly attempting to lazy unmount /dev/sdc1 as enclosing drive was disconnected
Oct 17 23:06:08 000c6e7eddc5 kernel: usb 4-4.2: reset high speed USB device using ehci_hcd and address 5
Oct 17 23:06:08 000c6e7eddc5 hald: unmounted /dev/sdc1 from '/media/FLASH_EIL' on behalf of uid 0
Oct 17 23:06:23 000c6e7eddc5 kernel: usb 4-4.2: device descriptor read/64, error -110
Oct 17 23:06:38 000c6e7eddc5 kernel: usb 4-4.2: device descriptor read/64, error -110
Oct 17 23:06:38 000c6e7eddc5 kernel: usb 4-4.2: reset high speed USB device using ehci_hcd and address 5
Oct 17 23:06:53 000c6e7eddc5 kernel: usb 4-4.2: device descriptor read/64, error -110
Oct 17 23:06:53 000c6e7eddc5 kernel: usb 4-4.2: device descriptor read/64, error -110
Oct 17 23:07:09 000c6e7eddc5 kernel: usb 4-4.2: reset high speed USB device using ehci_hcd and address 5
Oct 17 23:07:19 000c6e7eddc5 kernel: usb 4-4.2: device not accepting address 5, error -110
Oct 17 23:07:19 000c6e7eddc5 kernel: usb 4-4.2: reset high speed USB device using ehci_hcd and address 5
Oct 17 23:07:29 000c6e7eddc5 kernel: usb 4-4.2: device not accepting address 5, error -110
Oct 17 23:07:29 000c6e7eddc5 kernel: sd 4:0:0:0: scsi: Device offlined - not ready after error recovery
Oct 17 23:07:29 000c6e7eddc5 kernel: sd 4:0:0:0: [sdb] Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK,SUGGEST_OK
Oct 17 23:07:29 000c6e7eddc5 kernel: end_request: I/O error, dev sdb, sector 67296
Oct 17 23:07:29 000c6e7eddc5 kernel: Buffer I/O error on device sdb, logical block 8412
Oct 17 23:07:29 000c6e7eddc5 kernel: Buffer I/O error on device sdb, logical block 8413
Oct 17 23:07:29 000c6e7eddc5 kernel: Buffer I/O error on device sdb, logical block 8414
Oct 17 23:07:29 000c6e7eddc5 kernel: Buffer I/O error on device sdb, logical block 8415
Oct 17 23:07:29 000c6e7eddc5 kernel: Buffer I/O error on device sdb, logical block 8416
Oct 17 23:07:29 000c6e7eddc5 kernel: Buffer I/O error on device sdb, logical block 8417
Oct 17 23:07:29 000c6e7eddc5 kernel: Buffer I/O error on device sdb, logical block 8418
Oct 17 23:07:29 000c6e7eddc5 kernel: Buffer I/O error on device sdb, logical block 8419
Oct 17 23:07:29 000c6e7eddc5 hald[2170]: forcibly attempting to lazy unmount /dev/sdb1 as enclosing drive was disconnected
Oct 17 23:07:30 000c6e7eddc5 hald: unmounted /dev/sdb1 from '/media/STICK_128MB' on behalf of uid 0
Oct 17 23:07:29 000c6e7eddc5 kernel: Buffer I/O error on device sdb, logical block 8420
Oct 17 23:07:29 000c6e7eddc5 kernel: Buffer I/O error on device sdb, logical block 8421
Oct 17 23:07:29 000c6e7eddc5 kernel: sd 4:0:0:0: rejecting I/O to offline device
Oct 17 23:07:29 000c6e7eddc5 syslog-ng[2086]: last message repeated 2 times
Oct 17 23:07:29 000c6e7eddc5 kernel: sd 4:0:0:0: [sdb] Result: hostbyte=DID_NO_CONNECT driverbyte=DRIVER_OK,SUGGEST_OK
Oct 17 23:07:29 000c6e7eddc5 kernel: end_request: I/O error, dev sdb, sector 67536
Oct 17 23:07:29 000c6e7eddc5 kernel: usb 4-4.2: USB disconnect, address 5
Oct 17 23:07:29 000c6e7eddc5 kernel: scsi 4:0:0:0: rejecting I/O to dead device
Oct 17 23:07:29 000c6e7eddc5 syslog-ng[2086]: last message repeated 3 times
Oct 17 23:07:29 000c6e7eddc5 kernel: scsi 4:0:0:0: [sdb] READ CAPACITY failed
Oct 17 23:07:29 000c6e7eddc5 kernel: scsi 4:0:0:0: [sdb] Result: hostbyte=DID_NO_CONNECT driverbyte=DRIVER_OK,SUGGEST_OK
Oct 17 23:07:29 000c6e7eddc5 kernel: scsi 4:0:0:0: [sdb] Sense not available.
Oct 17 23:07:29 000c6e7eddc5 kernel: scsi 4:0:0:0: rejecting I/O to dead device
Oct 17 23:07:29 000c6e7eddc5 kernel: scsi 4:0:0:0: [sdb] Write Protect is off
Oct 17 23:07:29 000c6e7eddc5 kernel: scsi 4:0:0:0: [sdb] Mode Sense: 00 00 00 00
Oct 17 23:07:29 000c6e7eddc5 kernel: scsi 4:0:0:0: [sdb] Assuming drive cache: write through
Oct 17 23:07:29 000c6e7eddc5 kernel: scsi 4:0:0:0: rejecting I/O to dead device
Oct 17 23:07:29 000c6e7eddc5 kernel: FAT: FAT read failed (blocknr 33)
Oct 17 23:07:29 000c6e7eddc5 kernel: usb 4-4.2: new high speed USB device using ehci_hcd and address 7
Oct 17 23:07:45 000c6e7eddc5 kernel: usb 4-4.2: device descriptor read/64, error -110
Oct 17 23:07:45 000c6e7eddc5 kernel: usb 4-4.2: device descriptor read/64, error -110
Oct 17 23:08:00 000c6e7eddc5 kernel: usb 4-4.2: new high speed USB device using ehci_hcd and address 8
Oct 17 23:08:15 000c6e7eddc5 kernel: usb 4-4.2: device descriptor read/64, error -110
Oct 17 23:08:15 000c6e7eddc5 kernel: usb 4-4.2: device descriptor read/64, error -110
Oct 17 23:08:30 000c6e7eddc5 kernel: usb 4-4.2: new high speed USB device using ehci_hcd and address 9
Oct 17 23:08:41 000c6e7eddc5 kernel: usb 4-4.2: device not accepting address 9, error -110
Oct 17 23:08:41 000c6e7eddc5 kernel: usb 4-4.2: new high speed USB device using ehci_hcd and address 10
Oct 17 23:08:51 000c6e7eddc5 kernel: usb 4-4.2: device not accepting address 10, error -110








-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.