Boot stuck on Android 2.3.x SMP

150 views
Skip to first unread message

Yan-Pai Chen

unread,
Mar 23, 2012, 5:15:42 AM3/23/12
to android-...@googlegroups.com
Hi all,

I am working with a dual-core processor (ARM) which is running at very low speed (33MHz).
The booting process stuck at "ANDROID" animation sometimes.
It looks like that if Launcher failed to attach, the booting process just stuck (please see the message below).
But sometimes the Launcher may restart again and the booting process is then finished.

1) Is this a possible path (to be stuck) in the design of Android 2.3.x SMP ?
2) How can I ensure the restart of Launcher always happen when it is failed to attach?

By the way, I have tried to workaround this by increasing the PROC_START_TIMEOUT to 20 seconds.
It seems to work because Launcher has enough time to attach.

3) So is my processor really too slow to run Android SMP?

Any suggestion is welcome... :)

--
I/ActivityManager(  101): System now ready
I/ActivityManager(  101): Config changed: { scale=1.0 imsi=0/0 loc=en_US touch=3 keys=1/1/2 nav=1/1 orien=2 layout=268435491 uiMode=0 seq=1}
I/SystemServer(  101): Making services ready
I/StatusBarManagerService(  101): Starting service: ComponentInfo{com.android.systemui/com.android.systemui.statusbar.StatusBarService}
I/Zygote  (  101): Process: zygote socket opened
I/ActivityManager(  101): Start proc com.android.systemui for service com.android.systemui/.statusbar.StatusBarService: pid=159 uid=1000 gids={3002, 3001, 3003}
I/ActivityManager(  101): Config changed: { scale=1.0 imsi=0/0 loc=en_US touch=3 keys=1/1/2 nav=1/1 orien=2 layout=268435491 uiMode=17 seq=2}
W/RecognitionManagerService(  101): no available voice recognition services found
D/dalvikvm(  101): GC_EXTERNAL_ALLOC freed 127K, 40% free 3938K/6535K, external 1035K/1038K, paused 2074ms
W/ActivityManager(  101): Process ProcessRecord{407475b8 159:com.android.systemui/1000} failed to attach
W/ActivityManager(  101): Forcing bringing down service: ServiceRecord{40746fe8 com.android.systemui/.statusbar.StatusBarService}
I/Process (  101): Sending signal. PID: 159 SIG: 9
I/Process (  101): Sending signal. PID: 159 SIG: 9
W/ActivityManager(  101): No pending application record for pid 159 (IApplicationThread android.app.ApplicationThreadProxy@4074e360); dropping process
W/ActivityManager(  101): Timeout of broadcast BroadcastRecord{40762668 android.intent.action.TIME_TICK} - receiver=android.app.LoadedApk$ReceiverDispatcher$InnerReceiver@406c60c8, started 10010ms ago
W/ActivityManager(  101): Receiver during timeout: BroadcastFilter{406d8600 ReceiverList{406becf0 101 system/1000 local:406c60c8}}
I/ActivityManager(  101): Start proc com.android.inputmethod.latin for service com.android.inputmethod.latin/.LatinIME: pid=170 uid=10012 gids={}
D/NetworkManagmentService(  101): Registering observer
E/ThrottleService(  101): Could not open GPS configuration file /etc/gps.conf
I/ActivityManager(  101): Start proc com.android.phone for added application com.android.phone: pid=173 uid=1001 gids={3002, 3001, 3003, 1015}
I/ActivityManager(  101): Start proc com.android.systemui for added application com.android.systemui: pid=174 uid=1000 gids={3002, 3001, 3003}
I/ActivityManager(  101): Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10000000 cmp=com.android.launcher/com.android.launcher2.Launcher } from pid 0
I/ActivityManager(  101): Start proc com.android.launcher for activity com.android.launcher/com.android.launcher2.Launcher: pid=177 uid=10018 gids={}
I/SystemServer(  101): Enabled StrictMode for system server main thread.
W/ActivityManager(  101): Timeout of broadcast BroadcastRecord{40762668 android.intent.action.TIME_TICK} - receiver=android.app.LoadedApk$ReceiverDispatcher$InnerReceiver@40706ce8, started 10025ms ago
W/ActivityManager(  101): Receiver during timeout: BroadcastFilter{4072b8d8 ReceiverList{4072b860 101 system/1000 local:40706ce8}}
W/ActivityManager(  101): Unable to start service Intent { act=@0 }: not found
W/ActivityManager(  101): Process ProcessRecord{4061b3d8 170:com.android.inputmethod.latin/10012} failed to attach
W/ActivityManager(  101): Forcing bringing down service: ServiceRecord{4074e958 com.android.inputmethod.latin/.LatinIME}
I/Process (  101): Sending signal. PID: 170 SIG: 9
W/ActivityManager(  101): Process ProcessRecord{407458a8 173:com.android.phone/1001} failed to attach
I/Process (  101): Sending signal. PID: 173 SIG: 9
W/ActivityManager(  101): Process ProcessRecord{4075c938 174:com.android.systemui/1000} failed to attach
I/Process (  101): Sending signal. PID: 174 SIG: 9
W/ActivityManager(  101): Unable to start service Intent { act=@0 }: not found
W/ActivityManager(  101): finishReceiver called but no pending broadcasts
W/ActivityManager(  101): finishReceiver called but no pending broadcasts
W/ActivityManager(  101): Process ProcessRecord{40732d18 177:com.android.launcher/10018} failed to attach
I/Process (  101): Sending signal. PID: 177 SIG: 9
I//system/bin/tc(   75): Cannot find device "rmnet0"
I/logwrapper(   75): /system/bin/tc terminated by exit(1)
W/ProcessStats(  101): Skipping unknown process pid 184
W/ProcessStats(  101): Skipping unknown process pid 188
W/ProcessStats(  101): Skipping unknown process pid 189
I//system/bin/tc(   75): Cannot find device "rmnet0"
I/logwrapper(   75): /system/bin/tc terminated by exit(1)
D/dalvikvm(  101): GC_CONCURRENT freed 254K, 40% free 4085K/6791K, external 1324K/1567K, paused 923ms+289ms
D/dalvikvm(  101): GC_EXTERNAL_ALLOC freed 36K, 41% free 4048K/6791K, external 1324K/1567K, paused 2573ms
I//system/bin/tc(   75): Cannot find device "ifb0"
I/logwrapper(   75): /system/bin/tc terminated by exit(1)
D/dalvikvm(  101): GC_EXTERNAL_ALLOC freed 81K, 39% free 4197K/6791K, external 2465K/3078K, paused 1772ms
D/dalvikvm(  101): GC_CONCURRENT freed 423K, 40% free 4316K/7175K, external 3334K/3965K, paused 344ms+182ms
I/dalvikvm(  101): Jit: resizing JitTable from 512 to 1024
D/dalvikvm(  101): GC_CONCURRENT freed 739K, 40% free 4811K/8007K, external 3345K/3965K, paused 182ms+308ms
W/SharedBufferStack(  111): dequeue: tail=1, head=0, avail=2, queued=0

Christopher Tate

unread,
Mar 26, 2012, 2:29:12 PM3/26/12
to android-...@googlegroups.com
Android does not support SMP prior to 3.0.  If you really need to put Android 2.x on an SMP SoC, you will need to replicate the Android 3 work in the C library (bionic) and in Dalvik that made them SMP-safe.  (Plus, of course, you need to be running a sufficiently new kernel that it is also SMP safe on ARM.)

Beyond that, yes, the very slow speed of the CPU will likely be a problem if timed events such as broadcasts simply cannot execute fast enough to avoid timeouts.

--
christopher tate
android framework engineer



--
You received this message because you are subscribed to the Google Groups "android-platform" group.
To view this discussion on the web visit https://groups.google.com/d/msg/android-platform/-/Y2mFL3P7pKEJ.
To post to this group, send email to android-...@googlegroups.com.
To unsubscribe from this group, send email to android-platfo...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/android-platform?hl=en.

Yan-Pai Chen

unread,
Mar 28, 2012, 2:25:45 AM3/28/12
to android-...@googlegroups.com
Hi  Christopher,

Thanks for your help.
So when timeouts occur, Android 2.3.x SMP may not be able to recover (or restart) the boot process in the timeout handling?

Christopher Tate於 2012年3月27日星期二UTC+8上午2時29分12秒寫道:
To post to this group, send email to android-platform@googlegroups.com.
To unsubscribe from this group, send email to android-platform+unsubscribe@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages