System crashed at xhci_free_dev() when usb host died in Red Hat Enterprise Linux 6
Issue
- System crashed when usb host dies with following logs.
<4>xhci_hcd 0000:00:14.0: Timeout while waiting for address device command
<3>xhci_hcd 0000:00:14.0: ERROR: unexpected command completion code 0x18.
<3>usb 4-11.1: device not accepting address 14, error -22
<3>hub 4-11:1.0: cannot disable port 1 (err = -110)
<4>xhci_hcd 0000:00:14.0: Timeout while waiting for a slot
<4>xhci_hcd 0000:00:14.0: Abort the command ring, but the xHCI is dead.
<3>hub 4-11:1.0: cannot reset port 1 (err = -19)
<3>hub 4-11:1.0: cannot disable port 1 (err = -19)
...
<1>BUG: unable to handle kernel NULL pointer dereference at 0000000000000040
<1>IP: [<ffffffffa004a923>] xhci_free_dev+0x63/0x170 [xhci_hcd]
<4>PGD 40509dd067 PUD 4050eaa067 PMD 0
<4>Oops: 0002 [#1] SMP
<4>Pid: 111, comm: khubd Tainted: G --------------- T 2.6.32-431.el6.x86_64 #1 HP ProLiant DL380 Gen9/ProLiant DL380 Gen9
<4>RIP: 0010:[<ffffffffa004a923>] [<ffffffffa004a923>] xhci_free_dev+0x63/0x170 [xhci_hcd]
Environment
- Red Hat Enterprise Linux 6
- kernel-2.6.32-431.x or prior version of kernel.
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.