uhci_hcd: host system error

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello all,

I am using kernel 2.6.20-16 (Ubuntu Feisty). Occasionally I am getting USB host controller halts. If I manually remove and reinsert the uhci_hcd module, everything is back to normal. I recompiled the kernel with the CONFIG_USB_DEBUG option on and waited until a halt occurred. The devices I had connected were:

Bus 005 Device 002: ID eb1a:2750 eMPIA Technology, Inc.
Bus 005 Device 001: ID 0000:0000 Bus 004 Device 003: ID 045e:008c Microsoft Corp. Wireless Intellimouse Explorer 2.0 Bus 004 Device 001: ID 0000:0000 Bus 003 Device 001: ID 0000:0000 Bus 002 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000
The entry in the syslog indicating the halt are the following:

Jun 4 16:00:53 localhost kernel: [ 355.820000] uhci_hcd 0000:00:1d.3: host system error, PCI problems? Jun 4 16:00:53 localhost kernel: [ 355.820000] uhci_hcd 0000:00:1d.3: host controller halted, very bad! Jun 4 16:00:53 localhost kernel: [ 355.820000] uhci_hcd 0000:00:1d.3: HC died; cleaning up Jun 4 16:00:53 localhost kernel: [ 355.820000] hub 4-0:1.0: state 0 ports 2 chg 0000 evt 0000 Jun 4 16:00:53 localhost kernel: [ 355.820000] usb 4-1: USB disconnect, address 2 Jun 4 16:00:53 localhost kernel: [ 355.820000] usb 4-1: unregistering device Jun 4 16:00:53 localhost kernel: [ 355.820000] usb 4-1: usb_disable_device nuking all URBs Jun 4 16:00:53 localhost kernel: [ 355.820000] uhci_hcd 0000:00:1d.3: shutdown urb dfc4a840 pipe 40408280 ep1in-intr Jun 4 16:00:53 localhost kernel: [ 355.824000] usb 4-1: unregistering interface 4-1:1.0 Jun 4 16:00:53 localhost kernel: [ 355.824000] usbdev4.2_ep81: ep_device_release called for usbdev4.2_ep81
Jun  4 16:00:53 localhost kernel: [  355.824000] usb 4-1:1.0: uevent
Jun 4 16:00:53 localhost kernel: [ 355.824000] usbdev4.2_ep00: ep_device_release called for usbdev4.2_ep00
Jun  4 16:00:53 localhost kernel: [  355.824000] usb 4-1: uevent

I also used debugfs to monitor to status of the hubs. After the halt, the 0000:00:1d.3 had the following content:

Root-hub state: reset   FSBR: 0
HC status
 usbcmd    =     0000   Maxp32
 usbstat   =     0020   HCHalted
 usbint    =     0000
 usbfrnum  =   (0)000
 flbaseadd = 1fd04000
 sof       =       40
 stat1     =     01a3   LowSpeed ConnectChange Connected
stat2 = 0080 Most recent frame: 54cb9 (185) Last ISO frame: 54cb9 (185)

After the manual reset of the host controllers, the file contained

Root-hub state: running   FSBR: 0
HC status
 usbcmd    =     00c1   Maxp64 CF RS
usbstat = 0000 usbint = 000f
 usbfrnum  =   (1)ef0
 flbaseadd = 1acf4ef0
 sof       =       40
 stat1     =     01a5   LowSpeed Enabled Connected
stat2 = 0080 Most recent frame: 2b76f (879) Last ISO frame: 2b76f (879)

I don't think that the device connected actually matters, because I have had the same halts with different devices. Here is the relevant output from lspci -vv:

00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 02) (prog-if 00 [UHCI])
   Subsystem: Elitegroup Computer Systems Unknown device 0f69
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
   Latency: 0
   Interrupt: pin A routed to IRQ 19
   Region 4: I/O ports at ec00 [size=32]

00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 02) (prog-if 00 [UHCI])
   Subsystem: Elitegroup Computer Systems Unknown device 0f69
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
   Latency: 0
   Interrupt: pin B routed to IRQ 20
   Region 4: I/O ports at e880 [size=32]

00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 02) (prog-if 00 [UHCI])
   Subsystem: Elitegroup Computer Systems Unknown device 0f69
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
   Latency: 0
   Interrupt: pin C routed to IRQ 21
   Region 4: I/O ports at e800 [size=32]

00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 02) (prog-if 00 [UHCI])
   Subsystem: Elitegroup Computer Systems Unknown device 0f69
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
   Latency: 0
   Interrupt: pin D routed to IRQ 22
   Region 4: I/O ports at e480 [size=32]

00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02) (prog-if 20 [EHCI])
   Subsystem: Elitegroup Computer Systems Unknown device 0f69
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
   Latency: 0
   Interrupt: pin C routed to IRQ 21
   Region 0: Memory at ffefbc00 (32-bit, non-prefetchable) [size=1K]
   Capabilities: [50] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
       Status: D0 PME-Enable- DSel=0 DScale=0 PME-
   Capabilities: [58] Debug port

Can anyone suggest what the problem could be? Could I hope for any fix (or a quirk), which could overcome the crashes?

When replying, please CC: my email. Thank you.

Trifon Trifonov
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux