> > I'm going to play around with the hardware (case, power supply, cables, > > other pci-cards, different processor,...) tomorrow.
sorry, didn't have time for that yet. > > But for now I tried it with your patches (on top of 2.6.11-rc5). > > I had to fiddle around a bit with them to make them apply & compile > > together. I attached them just in case someone else is interested. > > Maybe you can take a look that I didn't mess them up. > > The kernel is a moving target... And those patches were written for the > USB development kernel, which isn't exactly the same as 2.6.11-rc5. If > the patches need updating I'll compare my version with yours. It wasn't the kernel but the patches among themselves. It seems like the new reset code wasn't written with the scsi struct stuff in mind, it e.g. had some us->host stuff in it which I had to replace. > > Until the disconnect the speed is a little bit better. The messages are a > > bit different than before: I continously get this type of message: > > <...> > > That's the normal case. It's supposed to be like that always. Ok, so this doesn't mean any kind of error, retransmission or the like. > This shows a port reset failing. It's not clear why it failed (looks like > you didn't have CONFIG_USB_DEBUG set), but maybe that doesn't matter. Sorry, forgot that during configure. Here are the logs with CONFIG_USB_DEBUG: a "regular" reset: usb-storage: *** thread awakened. usb-storage: Command READ_10 (10 bytes) usb-storage: 28 00 00 dc 81 1f 00 01 00 00 usb-storage: Bulk Command S 0x43425355 T 0x26ea L 131072 F 128 Trg 0 LUN 0 CL 10 usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes usb-storage: Status code 0; transferred 31/31 usb-storage: -- transfer complete usb-storage: Bulk command transfer result=0 usb-storage: usb_stor_bulk_transfer_sglist: xfer 131072 bytes, 17 entries usb-storage: Status code -121; transferred 130061/131072 usb-storage: -- short read transfer usb-storage: Bulk data transfer result 0x1 usb-storage: Attempting to get CSW... usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes usb-storage: command_abort called usb-storage: usb_stor_stop_transport called usb-storage: -- cancelling URB usb-storage: Status code -104; transferred 0/13 usb-storage: -- transfer cancelled usb-storage: Bulk status result = 4 usb-storage: -- command was aborted ehci_hcd 0000:00:0a.2: port 4 high speed ehci_hcd 0000:00:0a.2: GetStatus port 4 status 001005 POWER sig=se0 PE CONNECT usb 1-4: reset high speed USB device using ehci_hcd and address 2 ehci_hcd 0000:00:0a.2: port 4 high speed ehci_hcd 0000:00:0a.2: GetStatus port 4 status 001005 POWER sig=se0 PE CONNECT usb-storage: usb_reset_device returns 0 usb-storage: scsi command aborted usb-storage: *** thread sleeping. usb-storage: queuecommand called usb-storage: *** thread awakened. usb-storage: Command TEST_UNIT_READY (6 bytes) usb-storage: 00 00 00 00 00 00 usb-storage: Bulk Command S 0x43425355 T 0x26ea L 0 F 0 Trg 0 LUN 0 CL 6 usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes usb-storage: Status code 0; transferred 31/31 usb-storage: -- transfer complete usb-storage: Bulk command transfer result=0 usb-storage: Attempting to get CSW... usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes usb-storage: Status code 0; transferred 13/13 usb-storage: -- transfer complete usb-storage: Bulk status result = 0 usb-storage: Bulk Status S 0x53425355 T 0x26ea R 0 Stat 0x0 usb-storage: scsi cmd done, result=0x0 usb-storage: *** thread sleeping. and a failed reset with disconnect: usb-storage: *** thread awakened. usb-storage: Command READ_10 (10 bytes) usb-storage: 28 00 08 d1 77 47 00 01 00 00 usb-storage: Bulk Command S 0x43425355 T 0xef61 L 131072 F 128 Trg 0 LUN 0 CL 10 usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes usb-storage: Status code 0; transferred 31/31 usb-storage: -- transfer complete usb-storage: Bulk command transfer result=0 usb-storage: usb_stor_bulk_transfer_sglist: xfer 131072 bytes, 32 entries usb-storage: Status code 0; transferred 131072/131072 usb-storage: -- transfer complete usb-storage: Bulk data transfer result 0x0 usb-storage: Attempting to get CSW... usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes usb-storage: Status code 0; transferred 13/13 usb-storage: -- transfer complete usb-storage: Bulk status result = 0 usb-storage: Bulk Status S 0x53425355 T 0xef61 R 0 Stat 0x0 usb-storage: scsi cmd done, result=0x0 usb-storage: *** thread sleeping. usb-storage: queuecommand called usb-storage: *** thread awakened. usb-storage: Command READ_10 (10 bytes) usb-storage: 28 00 08 d1 78 47 00 01 00 00 usb-storage: Bulk Command S 0x43425355 T 0xef62 L 131072 F 128 Trg 0 LUN 0 CL 10 usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes usb-storage: Status code 0; transferred 31/31 usb-storage: -- transfer complete usb-storage: Bulk command transfer result=0 usb-storage: usb_stor_bulk_transfer_sglist: xfer 131072 bytes, 32 entries usb-storage: Status code -32; transferred 115200/131072 usb-storage: clearing endpoint halt for pipe 0xc0040280 usb-storage: usb_stor_control_msg: rq=01 rqtype=02 value=0000 index=88 len=0 usb-storage: usb_stor_clear_halt: result = 0 usb-storage: Bulk data transfer result 0x2 usb-storage: Attempting to get CSW... usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes usb-storage: Status code -32; transferred 0/13 usb-storage: clearing endpoint halt for pipe 0xc0040280 usb-storage: usb_stor_control_msg: rq=01 rqtype=02 value=0000 index=88 len=0 ehci_hcd 0000:00:0a.2: devpath 4 ep0out 3strikes usb-storage: usb_stor_clear_halt: result = -71 usb-storage: Bulk status result = 4 usb-storage: -- transport indicates error, resetting ehci_hcd 0000:00:0a.2: GetStatus port 4 status 001000 POWER sig=se0 ehci_hcd 0000:00:0a.2: GetStatus port 4 status 001000 POWER sig=se0 hub 1-0:1.0: logical disconnect on port 4 usb-storage: usb_reset_device returns -19 usb-storage: usb_stor_Bulk_reset called usb-storage: usb_stor_control_msg: rq=ff rqtype=21 value=0000 index=00 len=0 usb-storage: Soft reset failed: -19 usb-storage: scsi cmd done, result=0x70000 usb-storage: *** thread sleeping. hub 1-0:1.0: state 5 ports 4 chg 0010 evt 0000 hub 1-0:1.0: port 4, status 0100, change 0000, 12 Mb/s usb 1-4: USB disconnect, address 2 usb 1-4: usb_disable_device nuking all URBs usb 1-4: unregistering interface 1-4:1.0 usb-storage: storage_disconnect() called usb-storage: usb_stor_stop_transport called kobject_hotplug fill_kobj_path: path = '/class/scsi_device/0:0:0:0' fill_kobj_path: path = '/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0/host0/target0:0:0/0:0:0:0' kobject_hotplug: /sbin/udevsend scsi_device seq=601 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=remove DEVPATH=/class/scsi_device/0:0:0:0 SUBSYSTEM=scsi_device usb-storage: queuecommand called usb-storage: Fail command during disconnect SCSI error : <0 0 0 0> return code = 0x10000 end_request: I/O error, dev sda, sector 147945543 usb-storage: queuecommand called usb-storage: Fail command during disconnect SCSI error : <0 0 0 0> return code = 0x10000 end_request: I/O error, dev sda, sector 147945551 usb-storage: queuecommand called usb-storage: Fail command during disconnect [...] usb-storage: Fail command during disconnect SCSI error : <0 0 0 0> return code = 0x10000 end_request: I/O error, dev sda, sector 147946047 kobject 0:0:0:0: cleaning up kobject sda1: unregistering kobject_hotplug fill_kobj_path: path = '/block/sda/sda1' fill_kobj_path: path = '/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0/host0/target0:0:0/0:0:0:0' kobject_hotplug: /sbin/udevsend block seq=602 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=remove DEVPATH=/block/sda/sda1 SUBSYSTEM=block kobject iosched: unregistering kobject iosched: cleaning up kobject queue: unregistering kobject queue: cleaning up kobject_hotplug fill_kobj_path: path = '/block/sda' fill_kobj_path: path = '/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0/host0/target0:0:0/0:0:0:0' kobject_hotplug: /sbin/udevsend block seq=603 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=remove DEVPATH=/block/sda SUBSYSTEM=block kobject_hotplug fill_kobj_path: path = '/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0/host0/target0:0:0/0:0:0:0' kobject_hotplug: /sbin/udevsend scsi seq=604 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=remove DEVPATH=/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0/host0/target0:0:0/0:0:0:0 SUBSYSTEM=scsi kobject_hotplug fill_kobj_path: path = '/class/scsi_host/host0' fill_kobj_path: path = '/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0/host0' kobject_hotplug: /sbin/udevsend scsi_host seq=605 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=remove DEVPATH=/class/scsi_host/host0 SUBSYSTEM=scsi_host kobject host0: cleaning up usb-storage: -- usb_stor_release_resources usb-storage: -- sending exit command to thread usb-storage: *** thread awakened. usb-storage: -- exit command received usb-storage: -- dissociate_dev kobject_hotplug fill_kobj_path: path = '/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0' usb 1-4:1.0: hotplug kobject_hotplug: /sbin/udevsend usb seq=606 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=remove DEVPATH=/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0 SUBSYSTEM=usb usb 1-4: unregistering device kobject_hotplug fill_kobj_path: path = '/devices/pci0000:00/0000:00:0a.2/usb1/1-4' usb 1-4: hotplug kobject_hotplug: /sbin/udevsend usb seq=607 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=remove DEVPATH=/devices/pci0000:00/0000:00:0a.2/usb1/1-4 SUBSYSTEM=usb hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0010 ehci_hcd 0000:00:0a.2: GetStatus port 4 status 001803 POWER sig=j CSC CONNECT hub 1-0:1.0: port 4, status 0501, change 0001, 480 Mb/s scsi0 (0:0): rejecting I/O to dead device Buffer I/O error on device dm-0, logical block 18493185 hub 1-0:1.0: debounce: port 4: total 100ms stable 100ms status 0x501 ehci_hcd 0000:00:0a.2: port 4 high speed ehci_hcd 0000:00:0a.2: GetStatus port 4 status 001005 POWER sig=se0 PE CONNECT usb 1-4: new high speed USB device using ehci_hcd and address 3 ehci_hcd 0000:00:0a.2: port 4 high speed ehci_hcd 0000:00:0a.2: GetStatus port 4 status 001005 POWER sig=se0 PE CONNECT usb 1-4: new device strings: Mfr=56, Product=78, SerialNumber=100 usb 1-4: default language 0x0409 usb 1-4: Product: USB2.0 Storage Device usb 1-4: Manufacturer: Cypress Semiconductor usb 1-4: SerialNumber: DEF1076A66AF kobject 1-4: registering. parent: usb1, set: devices kobject_hotplug fill_kobj_path: path = '/devices/pci0000:00/0000:00:0a.2/usb1/1-4' usb 1-4: hotplug kobject_hotplug: /sbin/udevsend usb seq=608 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=add DEVPATH=/devices/pci0000:00/0000:00:0a.2/usb1/1-4 SUBSYSTEM=usb usb 1-4: adding 1-4:1.0 (config #1, interface 0) kobject 1-4:1.0: registering. parent: 1-4, set: devices kobject_hotplug fill_kobj_path: path = '/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0' usb 1-4:1.0: hotplug kobject_hotplug: /sbin/udevsend usb seq=609 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=add DEVPATH=/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0 SUBSYSTEM=usb usb-storage 1-4:1.0: usb_probe_interface usb-storage 1-4:1.0: usb_probe_interface - got id usb-storage: USB Mass Storage device detected usb-storage: -- associate_dev usb-storage: Vendor: 0x04b4, Product: 0x6830, Revision: 0x0001 usb-storage: Interface Subclass: 0x06, Protocol: 0x50 usb-storage: Vendor: Cypress Semiconductor, Product: USB2.0 Storage Device usb-storage: Transport: Bulk usb-storage: Protocol: Transparent SCSI usb-storage: usb_stor_control_msg: rq=fe rqtype=a1 value=0000 index=00 len=1 usb-storage: GetMaxLUN command result is -32, data is 169 usb-storage: usb_stor_control_msg: rq=01 rqtype=02 value=0000 index=88 len=0 usb-storage: usb_stor_clear_halt: result = 0 usb-storage: usb_stor_control_msg: rq=01 rqtype=02 value=0000 index=02 len=0 usb-storage: usb_stor_clear_halt: result = 0 usb-storage: *** thread sleeping. scsi1 : SCSI emulation for USB Mass Storage devices kobject host1: registering. parent: 1-4:1.0, set: devices kobject host1: registering. parent: scsi_host, set: class_obj kobject_hotplug fill_kobj_path: path = '/class/scsi_host/host1' fill_kobj_path: path = '/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0/host1' kobject_hotplug: /sbin/udevsend scsi_host seq=610 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=add DEVPATH=/class/scsi_host/host1 SUBSYSTEM=scsi_host usb-storage: device found at 3 usb-storage: waiting for device to settle before scanning scsi0 (0:0): rejecting I/O to dead device usb-storage: queuecommand called usb-storage: *** thread awakened. usb-storage: Command INQUIRY (6 bytes) usb-storage: 12 00 00 00 24 00 usb-storage: Bulk Command S 0x43425355 T 0xefa3 L 36 F 128 Trg 0 LUN 0 CL 6 usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes usb-storage: Status code 0; transferred 31/31 usb-storage: -- transfer complete usb-storage: Bulk command transfer result=0 usb-storage: usb_stor_bulk_transfer_buf: xfer 36 bytes usb-storage: Status code 0; transferred 36/36 usb-storage: -- transfer complete usb-storage: Bulk data transfer result 0x0 usb-storage: Attempting to get CSW... usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes usb-storage: Status code 0; transferred 13/13 usb-storage: -- transfer complete usb-storage: Bulk status result = 0 usb-storage: Bulk Status S 0x53425355 T 0xefa3 R 0 Stat 0x0 usb-storage: scsi cmd done, result=0x0 usb-storage: *** thread sleeping. Vendor: Maxtor 6 Model: Y200P0 Rev: 0 0 Type: Direct-Access ANSI SCSI revision: 00 kobject target1:0:0: registering. parent: host1, set: devices kobject 1:0:0:0: registering. parent: target1:0:0, set: devices kobject_hotplug fill_kobj_path: path = '/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0/host1/target1:0:0/1:0:0:0' kobject_hotplug: /sbin/udevsend scsi seq=611 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=add DEVPATH=/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0/host1/target1:0:0/1:0:0:0 SUBSYSTEM=scsi scsi0 (0:0): rejecting I/O to dead device usb-storage: queuecommand called usb-storage: *** thread awakened. usb-storage: Command TEST_UNIT_READY (6 bytes) usb-storage: 00 00 00 00 00 00 usb-storage: Bulk Command S 0x43425355 T 0xefa4 L 0 F 0 Trg 0 LUN 0 CL 6 usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes usb-storage: Status code 0; transferred 31/31 usb-storage: -- transfer complete usb-storage: Bulk command transfer result=0 usb-storage: Attempting to get CSW... usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes usb-storage: Status code 0; transferred 13/13 usb-storage: -- transfer complete usb-storage: Bulk status result = 0 usb-storage: Bulk Status S 0x53425355 T 0xefa4 R 0 Stat 0x0 usb-storage: scsi cmd done, result=0x0 usb-storage: *** thread sleeping. usb-storage: queuecommand called usb-storage: *** thread awakened. usb-storage: Command READ_CAPACITY (10 bytes) usb-storage: 25 00 00 00 00 00 00 00 00 00 usb-storage: Bulk Command S 0x43425355 T 0xefa5 L 8 F 128 Trg 0 LUN 0 CL 10 usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes usb-storage: Status code 0; transferred 31/31 usb-storage: -- transfer complete usb-storage: Bulk command transfer result=0 usb-storage: usb_stor_bulk_transfer_buf: xfer 8 bytes scsi0 (0:0): rejecting I/O to dead device usb-storage: Status code 0; transferred 8/8 usb-storage: -- transfer complete usb-storage: Bulk data transfer result 0x0 usb-storage: Attempting to get CSW... usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes scsi0 (0:0): rejecting I/O to dead device usb-storage: Status code 0; transferred 13/13 usb-storage: -- transfer complete usb-storage: Bulk status result = 0 usb-storage: Bulk Status S 0x53425355 T 0xefa5 R 0 Stat 0x0 usb-storage: scsi cmd done, result=0x0 usb-storage: *** thread sleeping. SCSI device sdb: 398297088 512-byte hdwr sectors (203928 MB) sdb: assuming drive cache: write through kobject sdb: registering. parent: <NULL>, set: block kobject_hotplug fill_kobj_path: path = '/block/sdb' fill_kobj_path: path = '/devices/pci0000:00/0000:00:0a.2/usb1/1-4/1-4:1.0/host1/target1:0:0/1:0:0:0' kobject_hotplug: /sbin/udevsend block seq=612 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=add DEVPATH=/block/sdb SUBSYSTEM=block > Sorry, nothing more has come up. I think the only way to attack this > problem will be by modifying the ehci-hcd driver. But exactly what's > going wrong and what changes are needed... no idea. You wouldn't happen > to have a USB bus analyzer lying around, would you? :-) Uhhmm, I used to have one down in the garage just beneath the warp engine and the teleporter - but now it's gone :-) Kind regards, Gerd ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel