On 29.04.2007 23:17 Alan Stern wrote: > On Sun, 29 Apr 2007, [ISO-8859-15] Dirk Försterling wrote: >> Any idea about how to fix that slowdown? > > David Brownell has suggested that it might be a hardware problem in the > PCI card's controller hardware, that it doesn't stop doing DMA when it is > told to. Of course that's just a guess; there's no way to tell at this > point. (In fact there may be no way to tell at all, leaving little choice > but to buy a different brand of PCI USB card and see if it works any > better...)
Well... as with so many PC-components: The card worked without a problem in another machine. (running windows - I'll see if I can test it again with Linux) Transfer rates with the same external hdd were about 22MB/s read and 7MB/s write - this is almost as fast as I could get with yet another machine's on-board USB port (25MB/s and 9MB/s, Linux 2.6.19.5). > You might be able to get some more useful information by doing this: Turn > on CONFIG_USB_DEBUG and rebuild the USB drivers. Then with the new > drivers loaded, plug in the USB drive and unplug it again a little while > later. Presumably the overall system slowdown will continue. Post the > output from dmesg so we can see if anything strange shows up in the log. Okay, here you go: (loading ehci_hcd) usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb ehci_hcd: block sizes: qh 128 qtd 96 itd 192 sitd 96 PCI: Found IRQ 3 for device 0000:00:13.2 PCI: Sharing IRQ 3 with 0000:00:11.0 ehci_hcd 0000:00:13.2: EHCI Host Controller drivers/usb/core/inode.c: creating file 'devices' drivers/usb/core/inode.c: creating file '001' ehci_hcd 0000:00:13.2: new USB bus registered, assigned bus number 1 ehci_hcd 0000:00:13.2: reset hcs_params 0x2204 dbg=0 cc=2 pcc=2 ordered !ppc ports=4 ehci_hcd 0000:00:13.2: reset hcc_params 6872 thresh 7 uframes 256/512/1024 ehci_hcd 0000:00:13.2: MWI active ehci_hcd 0000:00:13.2: supports USB remote wakeup ehci_hcd 0000:00:13.2: irq 3, io mem 0xea001000 ehci_hcd 0000:00:13.2: reset command 080002 (park)=0 ithresh=8 period=1024 Reset HALT ehci_hcd 0000:00:13.2: init command 010009 (park)=0 ithresh=1 period=256 RUN ehci_hcd 0000:00:13.2: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004 usb usb1: default language 0x0409 usb usb1: new device strings: Mfr=3, Product=2, SerialNumber=1 usb usb1: Product: EHCI Host Controller usb usb1: Manufacturer: Linux 2.6.21.1z1 ehci_hcd usb usb1: SerialNumber: 0000:00:13.2 usb usb1: uevent usb usb1: usb_probe_device usb usb1: configuration #1 chosen from 1 choice usb usb1: adding 1-0:1.0 (config #1, interface 0) usb 1-0:1.0: uevent hub 1-0:1.0: usb_probe_interface hub 1-0:1.0: usb_probe_interface - got id hub 1-0:1.0: USB hub found hub 1-0:1.0: 4 ports detected hub 1-0:1.0: standalone hub hub 1-0:1.0: no power switching (usb 1.0) hub 1-0:1.0: individual port over-current protection hub 1-0:1.0: Single TT hub 1-0:1.0: TT requires at most 8 FS bit times (666 ns) hub 1-0:1.0: power on to power good time: 20ms hub 1-0:1.0: local power source is good hub 1-0:1.0: trying to enable port power on non-switchable hub hub 1-0:1.0: state 7 ports 4 chg 0000 evt 0000 drivers/usb/core/inode.c: creating file '001' (plugging in the drive) hub 1-0:1.0: state 7 ports 4 chg 0000 evt 0002 ehci_hcd 0000:00:13.2: GetStatus port 1 status 001803 POWER sig=j CSC CONNECT hub 1-0:1.0: port 1, status 0501, change 0001, 480 Mb/s hub 1-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x501 ehci_hcd 0000:00:13.2: port 1 high speed ehci_hcd 0000:00:13.2: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 1-1: new high speed USB device using ehci_hcd and address 2 ehci_hcd 0000:00:13.2: port 1 high speed ehci_hcd 0000:00:13.2: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 1-1: default language 0x0409 usb 1-1: new device strings: Mfr=1, Product=2, SerialNumber=3 usb 1-1: Product: External HDD usb 1-1: Manufacturer: Western Digital usb 1-1: SerialNumber: <serial number> usb 1-1: uevent usb 1-1: usb_probe_device usb 1-1: configuration #1 chosen from 1 choice usb 1-1: adding 1-1:1.0 (config #1, interface 0) usb 1-1:1.0: uevent (unplugging the device a while later) hub 1-0:1.0: state 7 ports 4 chg 0000 evt 0002 ehci_hcd 0000:00:13.2: GetStatus port 1 status 001002 POWER sig=se0 CSC hub 1-0:1.0: port 1, status 0100, change 0001, 12 Mb/s usb 1-1: USB disconnect, address 2 usb 1-1: unregistering device usb 1-1: usb_disable_device nuking all URBs usb 1-1: unregistering interface 1-1:1.0 usbdev1.2_ep01: ep_device_release called for usbdev1.2_ep01 usbdev1.2_ep81: ep_device_release called for usbdev1.2_ep81 usb 1-1:1.0: uevent usbdev1.2_ep00: ep_device_release called for usbdev1.2_ep00 usb 1-1: uevent hub 1-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x100 At this point, the slowdown was not yet gone (as expected). After about 15 minutes, I "switched to turbo" again: (unloading ehci_hcd) ehci_hcd 0000:00:13.2: remove, state 1 ehci_hcd 0000:00:13.2: roothub graceful disconnect usb usb1: USB disconnect, address 1 usb usb1: unregistering device usb usb1: usb_disable_device nuking all URBs ehci_hcd 0000:00:13.2: shutdown urb d1298120 pipe 40408180 ep1in-intr usb usb1: unregistering interface 1-0:1.0 usbdev1.1_ep81: ep_device_release called for usbdev1.1_ep81 usb 1-0:1.0: uevent usbdev1.1_ep00: ep_device_release called for usbdev1.1_ep00 usb usb1: uevent ehci_hcd 0000:00:13.2: stop ehci_hcd 0000:00:13.2: reset command 01000b (park)=0 ithresh=1 period=256 Reset RUN ehci_hcd 0000:00:13.2: irq normal 13 err 0 reclaim 5 (lost 0) ehci_hcd 0000:00:13.2: complete 12 unlink 0 ehci_hcd 0000:00:13.2: ehci_stop completed status 1000 Halt ehci_hcd 0000:00:13.2: USB bus 1 deregistered Immediately after the rmmod, the network speed was up again. > And include also the contents of the files in > > /sys/class/usb_host/usb_host1 ### /sys/class/usb_host/usb_host1/companion: (empty) ### /sys/class/usb_host/usb_host1/registers: bus pci, device 0000:00:13.2 (driver 10 Dec 2004) EHCI Host Controller EHCI 1.00, hcd state 1 ownership 00000001 SMI sts/enable 0xc0080000 structural params 0x00002204 capability params 0x00006872 status a008 Async Recl FLR command 010009 (park)=0 ithresh=1 period=256 RUN intrenable 37 IAA FATAL PCD ERR INT uframe 182d <--- (this value changes constantly) port 1 status 001000 POWER sig=se0 port 2 status 001000 POWER sig=se0 port 3 status 001000 POWER sig=se0 port 4 status 001000 POWER sig=se0 irq normal 13 err 0 reclaim 5 (lost 0) complete 12 unlink 0 ### /sys/class/usb_host/usb_host1/periodic: size = 256 ### /sys/class/usb_host/usb_host1/async: (empty) ### /sys/class/usb_host/usb_host1/uevent: (write only) ### /sys/class/usb_host/usb_host1/device/usb1/1-0:1.0/modalias: usb:v0000p0000d0206dc09dsc00dp01ic09isc00ip00 ### /sys/class/usb_host/usb_host1/device/usb1/1-0:1.0/bInterfaceProtocol: 00 ### /sys/class/usb_host/usb_host1/device/usb1/1-0:1.0/bInterfaceSubClass: 00 ### /sys/class/usb_host/usb_host1/device/usb1/1-0:1.0/bInterfaceClass: 09 ### /sys/class/usb_host/usb_host1/device/usb1/1-0:1.0/bNumEndpoints: 01 ### /sys/class/usb_host/usb_host1/device/usb1/1-0:1.0/bAlternateSetting: 0 ### /sys/class/usb_host/usb_host1/device/usb1/1-0:1.0/bInterfaceNumber: 00 ### /sys/class/usb_host/usb_host1/device/usb1/1-0:1.0/power/wakeup: (empty) ### /sys/class/usb_host/usb_host1/device/usb1/1-0:1.0/uevent: (write only) ### /sys/class/usb_host/usb_host1/device/usb1/serial: 0000:00:13.2 ### /sys/class/usb_host/usb_host1/device/usb1/product: EHCI Host Controller ### /sys/class/usb_host/usb_host1/device/usb1/manufacturer: Linux 2.6.21.1 ehci_hcd ### /sys/class/usb_host/usb_host1/device/usb1/quirks: 0x0 ### /sys/class/usb_host/usb_host1/device/usb1/maxchild: 4 ### /sys/class/usb_host/usb_host1/device/usb1/version: 2.00 ### /sys/class/usb_host/usb_host1/device/usb1/devnum: 1 ### /sys/class/usb_host/usb_host1/device/usb1/speed: 480 ### /sys/class/usb_host/usb_host1/device/usb1/bMaxPacketSize0: 64 ### /sys/class/usb_host/usb_host1/device/usb1/bNumConfigurations: 1 ### /sys/class/usb_host/usb_host1/device/usb1/bDeviceProtocol: 01 ### /sys/class/usb_host/usb_host1/device/usb1/bDeviceSubClass: 00 ### /sys/class/usb_host/usb_host1/device/usb1/bDeviceClass: 09 ### /sys/class/usb_host/usb_host1/device/usb1/bcdDevice: 0206 ### /sys/class/usb_host/usb_host1/device/usb1/idProduct: 0000 ### /sys/class/usb_host/usb_host1/device/usb1/idVendor: 0000 ### /sys/class/usb_host/usb_host1/device/usb1/bMaxPower: 0mA ### /sys/class/usb_host/usb_host1/device/usb1/bmAttributes: e0 ### /sys/class/usb_host/usb_host1/device/usb1/bConfigurationValue: 1 ### /sys/class/usb_host/usb_host1/device/usb1/bNumInterfaces: 1 ### /sys/class/usb_host/usb_host1/device/usb1/configuration: (empty) ### /sys/class/usb_host/usb_host1/device/usb1/power/wakeup: enabled ### /sys/class/usb_host/usb_host1/device/usb1/uevent: (write only) ### /sys/class/usb_host/usb_host1/device/pools: poolinfo - 0.1 ehci_sitd 0 0 96 0 ehci_itd 0 0 192 0 ehci_qh 1 32 128 1 ehci_qtd 1 42 96 1 buffer-2048 0 0 2048 0 buffer-512 0 0 512 0 buffer-128 0 0 128 0 buffer-32 1 128 32 1 ### /sys/class/usb_host/usb_host1/device/resource0: (Input/output error) ### /sys/class/usb_host/usb_host1/device/config: (binary content) ### /sys/class/usb_host/usb_host1/device/broken_parity_status: 0 ### /sys/class/usb_host/usb_host1/device/enable: 1 ### /sys/class/usb_host/usb_host1/device/modalias: pci:v00001106d00003104sv00001106sd00003104bc0Csc03i20 ### /sys/class/usb_host/usb_host1/device/local_cpus: 1 ### /sys/class/usb_host/usb_host1/device/irq: 3 ### /sys/class/usb_host/usb_host1/device/class: 0x0c0320 ### /sys/class/usb_host/usb_host1/device/subsystem_device: 0x3104 ### /sys/class/usb_host/usb_host1/device/subsystem_vendor: 0x1106 ### /sys/class/usb_host/usb_host1/device/device: 0x3104 ### /sys/class/usb_host/usb_host1/device/vendor: 0x1106 ### /sys/class/usb_host/usb_host1/device/resource: 0x00000000ea001000 0x00000000ea0010ff 0x0000000000000200 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 0x0000000000000000 ### /sys/class/usb_host/usb_host1/device/power/wakeup: enabled ### /sys/class/usb_host/usb_host1/device/uevent: (write only) I can't interpret that data. Is it sufficient to say what the (probable) cause of the slowdown is? Can I do anything else to find out? -dirk -- D i r k F "o r s t e r l i n g [EMAIL PROTECTED] http://r.zorbla.de/ ------------- A child of five could understand this. Fetch me a child of five! ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Linux-usb-users@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-users