Re: USB hangs

From: Lukas Postupa
Date: Sun Jan 11 2004 - 13:47:39 EST


Alan Cox wrote:
> With the various fixes people had been posting USB storage
> writing was still hanging repeatedly when doing a 20Gb rsync
> to usb-storage disks with a low memory system. Doing things
> like while(true) sync() made it hang even more often.
>
> After a bit of digging the following seems to fix it
>
> Not sure if 2.6 needs this as well.

I have similiar problems with kernel 2.6.0 on Intel architecture with
512 MB Ram.

My Abit IT7-MAX2 2.0 mainboard has two USB - EHCI controllers:

00:1d.7 USB Controller: Intel Corp. 82801DB USB EHCI Controller (rev 02)

02:06.2 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 51)

I'm using rsync to transfer my data to usb storage.
Connecting usb storage to one of the 4 ports of VIA EHCI controller and
then transferring data to it works good.

But connecting usb storage to one of the 6 ports of INTEL EHCI
controller and then transferring data to it, will hang up usb storage:

Buffer I/O error on device sda1, logical block 121479
lost page write due to I/O error on sda1
Buffer I/O error on device sda1, logical block 121480
lost page write due to I/O error on sda1
ehci_hcd 0000:00:1d.7: GetStatus port 2 status 001002 POWER sig=se0 CSC
hub 6-0:1.0: port 2, status 100, change 1, 12 Mb/s
usb 6-2: USB disconnect, address 4
usb 6-2: usb_disable_device nuking all URBs
usb 6-2: unregistering interface 6-2:1.0
usb-storage: storage_disconnect() called
usb-storage: usb_stor_stop_transport called
usb-storage: -- dissociate_dev
usb-storage: -- sending exit command to thread
usb-storage: *** thread awakened.
usb-storage: -- exit command received
usb-storage: -- usb_stor_release_resources finished
usb 6-2: unregistering device

VIA EHCI controller uses interrupt 21.
INTEL EHCI controller uses interrupt 23.

cat /proc/interrupts:

CPU0
0: 16675721 IO-APIC-edge timer
1: 6876 IO-APIC-edge i8042
2: 0 XT-PIC cascade
9: 5 IO-APIC-level acpi
12: 191706 IO-APIC-edge i8042
14: 251218 IO-APIC-edge ide0
15: 1 IO-APIC-edge ide1
16: 1446615 IO-APIC-level uhci_hcd, nvidia
18: 0 IO-APIC-level uhci_hcd, uhci_hcd
19: 278 IO-APIC-level uhci_hcd, uhci_hcd, EMU10K1
21: 257509 IO-APIC-level ehci_hcd
22: 7640 IO-APIC-level eth0
23: 322432 IO-APIC-level ehci_hcd
NMI: 0
LOC: 16675149
ERR: 0
MIS: 0

Any ideas?

Lukas

Attachment: signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil