EHCI softirq kernel panic

Anyone seen this before?

Trying to boot 3.0.0 with OE patches from an SD Card, and with a
network cable connected results in the following traceback.
Not connecting a network cable makes the errors go away.

[ 83.386779] Process gtk-update-icon (pid: 351, stack limit = 0xdd95c2f0)
[ 83.393798] Stack: (0xdd95dfb0 to 0xdd95e000)
[ 83.398345] dfa0: 007f9225
007ba664 000000bf 2fffffff
[ 83.406890] dfc0: 00ff2f2f 00ff0000 00ff0000 00ff0000 00ff0000
00ff0000 00000000 00799225
[ 83.415435] dfe0: 00ff0000 be9f8780 000000ff 4027e084 20000010
ffffffff 00000000 00000000
[ 83.423980] Code: bad PC value
[ 83.427490] ---[ end trace 4ae88755f08e391e ]---
[ 83.434570] S98configure[58]: Segmentation fault
[ 83.840148] S98configure[58]: Segmentation fault
[ 83.867004] S98configure[58]: gtk-update-icon-cache: Failed to open
file /usr/share/icons/gnome/.icon-theme.cache : File exists
[ 89.605407] S98configure[58]: gtk-update-icon-cache: Failed to open
file /usr/share/icons/HighContrastLargePrint/.icon-theme.cache : File
exists
[ 89.932525] S98configure[58]: gtk-update-icon-cache: Failed to open
file /usr/share/icons/Mist/.icon-theme.cache : File exists
[ 89.967773] S98configure[58]: gtk-update-icon-cache: Failed to open
file /usr/share/icons/gnome/.icon-theme.cache : File exists
[ 91.477386] S98configure[58]: gtk-update-icon-cache: Failed to open
file /usr/share/icons/HighContrastLargePrint/.icon-theme.cache : File
exists
[ 91.788269] S98configure[58]: gtk-update-icon-cache: Failed to open
file /usr/share/icons/Mist/.icon-theme.cache : File exists
[ 91.822631] S98configure[58]: gtk-update-icon-cache: Failed to open
file /usr/share/icons/gnome/.icon-theme.cache : File exists
[ 94.313598] S98configure[58]: gtk-update-icon-cache: Failed to open
file /usr/share/icons/HighContrastLargePrint/.icon-theme.cache : File
exists
[ 95.381011] S98configure[58]: gtk-update-icon-cache: Failed to open
file /usr/share/icons/Mist/.icon-theme.cache : File exists
[ 95.415405] S98configure[58]: gtk-update-icon-cache: Failed to open
file /usr/share/icons/gnome/.icon-theme.cache : File exists
[ 99.084899] Unable to handle kernel NULL pointer dereference at
virtual address 00000000
[ 99.093383] pgd = c0004000
[ 99.096191] [00000000] *pgd=00000000
[ 99.099945] Internal error: Oops: 17 [#2]
[ 99.104125] Modules linked in: ipv6
[ 99.107788] CPU: 0 Tainted: G D (3.0.0+ #1)
[ 99.113342] PC is at ehci_quiesce+0xc/0x94
[ 99.117614] LR is at ehci_stop+0x34/0x8c
[ 99.121734] pc : [<c0325ce4>] lr : [<c0328bfc>] psr: 200001d3
[ 99.121734] sp : c064de70 ip : 00000108 fp : c06b8624
[ 99.133728] r10: c064dec0 r9 : 00000000 r8 : dee08504
[ 99.139190] r7 : c0328b94 r6 : 00000100 r5 : dee08504 r4 : dee08608
[ 99.145996] r3 : 00000000 r2 : dee086ec r1 : dee086b8 r0 : dee08608
[ 99.152832] Flags: nzCv IRQs off FIQs off Mode SVC_32 ISA ARM
Segment kernel
[ 99.160644] Control: 10c5387d Table: 9d804019 DAC: 00000015
[ 99.166656] Process swapper (pid: 0, stack limit = 0xc064c2f0)
[ 99.172760] Stack: (0xc064de70 to 0xc064e000)
[ 99.177307] de60: dee08608
dee086b8 dee08608 dee08504
[ 99.185852] de80: 00000100 c0328bfc 00000001 a0000153 dee08504
c007a3d4 00200200 60000153
[ 99.194396] dea0: dee08504 c007a3d4 00200200 c06b87a0 c064c000
c007a3d4 c064c000 00000003
[ 99.202941] dec0: c064dec0 c064dec0 0000000a 00000001 c06b8628
c064c000 00000100 c06b8600
[ 99.211517] dee0: 0000000a c0075ec0 0000a246 c0677bdc 00000000
00000001 00000003 00000025
[ 99.220062] df00: 00000000 c0654258 00000003 00000003 413fc082
00000000 00000000 c0076290
[ 99.228607] df20: 00000025 c0040064 60000053 ffffffff fa200000
c0044ff8 00051f4d 00000000
[ 99.237152] df40: 00051f4d 00000000 c06a662c c0654258 c0654258
00000003 00000003 413fc082
[ 99.245697] df60: 00000000 00000000 00000000 c064df80 c0054dcc
c0054dd8 60000053 ffffffff
[ 99.254272] df80: 00000000 00051f4d 00000063 04aae30b 00000063
04a5c3be 00000001 00000000
[ 99.262817] dfa0: c0654248 c0654258 c06d7a6c c0377404 c064c000
c0652254 c06a5d04 c065224c
[ 99.271362] dfc0: 80004059 c0045f40 c064e9b4 c003341c c0ae1140
c0008868 c00082c8 0000060a
[ 99.279907] dfe0: 80000100 c003341c 10c53c7d c064e060 c0033418
8000803c 00000000 00000000
[ 99.288482] [<c0325ce4>] (ehci_quiesce+0xc/0x94) from [<c0328bfc>]
(ehci_stop+0x34/0x8c)
[ 99.296936] [<c0328bfc>] (ehci_stop+0x34/0x8c) from [<c007a3d4>]
(run_timer_softirq+0x15c/0x1f8)
[ 99.306121] [<c007a3d4>] (run_timer_softirq+0x15c/0x1f8) from
[<c064dec0>] (0xc064dec0)
[ 99.314483] Code: c05d7f9a e92d4073 e1a04000 e5903004 (e5933000)
[ 99.320892] ---[ end trace 4ae88755f08e391f ]---
[ 99.325714] Kernel panic - not syncing: Fatal exception in interrupt

Regards,
Joel

Anyone seen this before?

A lot of the kernel developers don't frequent the beagleboard list.
If you think it is a general kernel bug, I suspect you want to copy
linux-omap.

Hi,

> Anyone seen this before?

A lot of the kernel developers don't frequent the beagleboard list.
If you think it is a general kernel bug, I suspect you want to copy
linux-omap.

and linux-usb, and Alan Stern as he's the EHCI maintainer and myself for
the OMAP USB part :wink:

I'm puzzled. Why is ehci_stop getting called in a softirq context?
That should never happen. It should get called only when the driver is
unbound from the controller.

Alan Stern

Hi,

Hi Felipe,

Thanks for looking into this.

It could be the 1GHz OPP patch in OE, after reverting it [1] I haven't
seen this issue since.

Thanks,
Joel

[1] https://github.com/joelagnel/meta-texasinstruments/commit/95fc251b1aeafc1ef774659a8e8654e11b620778