#4223 BLOC MP Star: Spinlock lockup on resume
Zarro Boogs per Child
bugtracker at laptop.org
Thu Oct 18 04:41:55 EDT 2007
#4223: Spinlock lockup on resume
----------------------+-----------------------------------------------------
Reporter: cjb | Owner: dilinger
Type: defect | Status: new
Priority: blocker | Milestone: MP Start
Component: kernel | Version:
Resolution: | Keywords:
Verified: 0 |
----------------------+-----------------------------------------------------
Comment(by wmb at firmworks.com):
http://dev.laptop.org/~wmb/q2d01a.rom
When suspending, it checksums all physical memory above 1M and saves the
answer at a location below 1M. On resume, it does it again, and if there
is a mismatch, it starts OFW instead of completing the resume. OFW
notices that this has happened and displays
Interacting due to botched resume
on the screen (and serial) in red letters, and gives you an ok prompt.
Also, if you have a serial console, you will see an 'x' after the +r in
the failing case.
You can test this from OFW as follows:
{{{
ok s
<wait a couple of seconds and hit the power button>
Interacting due to botched resume
ok
}}}
The failure is because the low-level suspend path in OFW doesn't turn off
the USB host controller on the way down (Linux does, I hope!), so the USB
DMA region tends to change value.
To see it work, do this:
{{{
ok usb-quiet
ok s
<wait a couple of seconds and hit the power button>
ok
}}}
Here is an example of it working in Linux (this is from the serial port):
{{{
ok boot
....
-bash-3.2# echo mem >/sys/power/state
[ 139.604469] Stopping tasks ... done.
[ 139.633939] Suspending console(s)
+r[ 139.715983] olpc_do_sleep!
[ 1.518107] usb usb1: root hub lost power or was reset
[ 1.739354] usb usb2: root hub lost power or was reset
[ 1.959513] usb_reset_device!
[ 2.020695] hub_port_wait_reset: portstatus=503 portchange=10
[ 2.140809] hub_port_wait_reset: portstatus=503 portchange=10
[ 2.232579] USB_REQ_SET_CONFIGURATION!
[ 2.360068] Restarting tasks ... done.
-bash-3.2#
}}}
--
Ticket URL: <https://dev.laptop.org/ticket/4223#comment:9>
One Laptop Per Child <https://dev.laptop.org>
OLPC bug tracking system
More information about the Bugs
mailing list