#4322 NORM Never A: Kernel crash while suspending
Zarro Boogs per Child
bugtracker at laptop.org
Wed Oct 24 03:27:38 EDT 2007
#4322: Kernel crash while suspending
---------------------+------------------------------------------------------
Reporter: wad | Owner: dilinger
Type: defect | Status: new
Priority: normal | Milestone: Never Assigned
Component: kernel | Version:
Resolution: | Keywords:
Verified: 0 |
---------------------+------------------------------------------------------
Comment(by dilinger):
{{{
Oct 24 06:42:22 localhost kernel: [ 228.831292] usb8xxx 1-1:1.0: suspend
}}}
Disable libertas driver on bus1
{{{
Oct 24 06:42:22 localhost kernel: [ 228.831310] usb 1-1: suspend
Oct 24 06:42:22 localhost kernel: [ 230.077602] hub 2-0:1.0: suspend
Oct 24 06:42:22 localhost kernel: [ 230.077621] usb usb2: suspend, may
wakeup
}}}
Disable bus2
{{{
Oct 24 06:42:22 localhost kernel: [ 230.077655] hub 1-0:1.0: suspend
Oct 24 06:42:22 localhost kernel: [ 230.077671] usb usb1: suspend, may
wakeup
Oct 24 06:42:22 localhost kernel: [ 230.077822] ehci_halt: 0 ->
intr_enable
Oct 24 06:42:22 localhost kernel: [ 230.078068] ehci_bus_suspend:
INTR_MASK ->
intr_enable
}}}
Disable bus1, which uses the ehci driver. Note that ehci_bus_suspend:
- calls ehci_quiesce, which ensures the async schedule is deactivated
- sets ehci->reclaim_ready = 1
- calls ehci_work to clean up any leftover QHs
- calls ehci_halt, which disables interrupts and waits for STS_HALT
- reenables interrupts (?!)
{{{
Oct 24 06:42:22 localhost kernel: [ 230.078087] ov7670 0-0042: suspend
Oct 24 06:42:22 localhost kernel: [ 230.078107] serial8250 serial8250:
suspend
Oct 24 06:42:22 localhost kernel: [ 230.078208] platform vesafb.0:
suspend
Oct 24 06:42:22 localhost kernel: [ 230.078227] platform pcspkr: suspend
Oct 24 06:42:22 localhost kernel: [ 230.078242] serial8250 serial8250.0:
suspen
d
Oct 24 06:42:22 localhost kernel: [ 230.078307] ehci_hcd 0000:00:0f.5:
suspend
Oct 24 06:42:22 localhost kernel: [ 230.078322] usb_hcd_pci_suspend:
enter
Oct 24 06:42:22 localhost kernel: [ 230.078337] ehci_pci_suspend: enter
(event:
2)
Oct 24 06:42:22 localhost kernel: [ 230.095153] ehci_pci_suspend: 0 ->
intr_ena
ble
}}}
Here's where we'd finally disable EHCI interrupts. Problem is, in the
original backtrace, we get an interrupt before we've had the chance to
disable it. I'm not sure yet whether the IRQ is spurious, or whether
ehci_work (which can possibly set CMD_IAAD, drains the QH list, and
doesn't wait for an IAA IRQ) is the cause.
--
Ticket URL: <https://dev.laptop.org/ticket/4322#comment:10>
One Laptop Per Child <https://dev.laptop.org>
OLPC bug tracking system
More information about the Bugs
mailing list