Figure out flashing mechanism for panda B2G builds

RESOLVED FIXED

Status

RESOLVED FIXED
6 years ago
6 months ago

People

(Reporter: jgriffin, Assigned: tzimmermann)

Tracking

Details

(Reporter)

Description

6 years ago
In order to get automated tests running on B2G builds running on panda boards, we need to figure out how to automatically flash them.  The current process requires manual intervention a couple of times, at least:  https://developer-new.mozilla.org/en-US/docs/Mozilla/Boot_to_Gecko/Pandaboard

According to Ted, it doesn't seem that PXE netbooting is an option.
(Reporter)

Updated

6 years ago
Blocks: 778249
Once you've flashed one successfully, you should be able to just use "dd" to copy that image to other SD cards and boot from those.

Not having PXE netboot is going to make using these in automation a lot harder, though, because we won't be able to remotely reimage them--we'll have to have someone manually swap the SD card out.
It might be possible to install uboot and have xloader pass control to U-boot instead of bootloader.bin.  Then we could still take advantage of the pxe boot functions and scripting ability in uboot.  Then U-boot can continue with either loading and passing control to bootloader.bin or it might be able bypass that and load the b2g kernel directly.

I'm thinking something like this:
Rom Code -> xloader -> U-boot -> bootloader.bin -> b2g kernel
or
Rom Code -> xloader -> U-boot -> b2g kernel
Moving to correct component.
Component: Release Engineering: Automation (General) → Release Engineering: Platform Support
QA Contact: catlee → coop
We'll need to land this before we get pandaboard automation going.
blocking-basecamp: --- → ?
Assignee: nobody → tdz
Status: NEW → ASSIGNED
A patch is pending on github to work around the broken 'fastboot erase'.
The goal here is to get the build output into a format that is compatible with the mobile re-imaging system that being developed for android on panda.  This basically means we need to mimic the Linaro's build output format in some fashion which will allow it to be applied directly to the mmc block device in a live linux environment.  The Linaro U-boot bootloader contains the pxe boot functionality that allows us to remotely force the panda board into the live linux environment.

First, system and userdata artifacts should be in tarball form.  This will allow them to be simply unpacked onto freshly formatted partitions.  This has been already been setup by :Catlee.

Second, and this is where we are hitting a wall,  we need to the kernel and the initrd to be compatible with the Linaro U-boot branch.  mwu: has taken a look at this to some extent and the conclusion is that the stock android kernel being used is not compatible in its current form.
Here is an update on the current state of this bug.

When building a compatible AOSP kernel, I found that

 1) the PandaBoard's prebuild kernel version is 3.0.8 with Android changes,
 2) older AOSP kernel versions (up to ~3.0.17) don't boot on PandaBoards, and
 3) newer versions are not compatible with the user-space graphics drivers.

I first tried 3.0.31, which boots but is not compatible with the user-space graphics driver for the PandaBoard's PoverVR SGX540. I tried different compile and configure options for the kernel, but the graphics driver never succeeded to initialize the kernel module. Debugging suggests that the initialization protocol changed in incompatible ways. The user-space driver is proprietary and closed source, so we cannot modify it.

I successfully compiled and booted the AOSP kernel 3.0.8. This needs some small patches, including a fix from 3.0.17 that solves the boot problem we've seen. Some versions of 3.0.8 contain a kernel graphics driver that seems compatible with user-space. With the correct kernel and the patches, it's possible to boot into our environment. B2G and all related processes seem to work, but I still don't have an image on the screen. I currently focus on fixing this problem.

There has also been talk about using the Linaro kernel instead of AOSP's. AFAICS the Linaro kernel does not contain a kernel graphics driver for the PandaBoard at all. We'd have to port (at least) the AOSP driver to Linaro's kernel, which is, I guess, not a small task.

Comment 8

6 years ago
(In reply to Thomas Zimmermann from comment #7)
> There has also been talk about using the Linaro kernel instead of AOSP's.
> AFAICS the Linaro kernel does not contain a kernel graphics driver for the
> PandaBoard at all. We'd have to port (at least) the AOSP driver to Linaro's
> kernel, which is, I guess, not a small task.

Hm, really? AFAIK, Android doesn't start unless you give it some form of GLES 1.

I looked at the kernel config for the Linaro 12.09 release and it has:

#
# Graphics support
#
# CONFIG_DRM is not set
CONFIG_PVR_SGX=y
CONFIG_PVR_SGXCORE_540=y
CONFIG_PVR_BUILD_RELEASE=y
# CONFIG_PVR_BUILD_DEBUG is not set
CONFIG_PVR_NEED_PVR_DPF=y
CONFIG_PVR_NEED_PVR_ASSERT=y
CONFIG_PVR_PERCONTEXT_PB=y
CONFIG_PVR_ACTIVE_POWER_MANAGEMENT=y
CONFIG_PVR_ACTIVE_POWER_LATENCY_MS=100
CONFIG_PVR_SGX_LOW_LATENCY_SCHEDULING=y
CONFIG_PVR_USSE_EDM_STATUS_DEBUG=y
CONFIG_PVR_DUMP_MK_TRACE=y
# CONFIG_PVR_PDUMP is not set
CONFIG_PVR_OMAP_DSS2=y

from http://releases.linaro.org/12.09/android/leb-panda/kernel_config

Are these the options you're looking for?
I also want to make sure that when we're talking about kernel requirements/hacking, we're also keeping bug 798427 in mind as well.  We need both PXEboot and static MAC addresses to make the imaging solution work.
Depends on: 798427
(In reply to Amy Rich [:arich] [:arr] from comment #9)
> I also want to make sure that when we're talking about kernel
> requirements/hacking, we're also keeping bug 798427 in mind as well.  We
> need both PXEboot and static MAC addresses to make the imaging solution work.

Ok, I put the Linaro patches from bug 798427 on top of my modifications.
(In reply to Michael Wu [:mwu] from comment #8)
> 
> I looked at the kernel config for the Linaro 12.09 release and it has:
> 
> #
> # Graphics support
> #
> # CONFIG_DRM is not set
> CONFIG_PVR_SGX=y
> CONFIG_PVR_SGXCORE_540=y
> CONFIG_PVR_BUILD_RELEASE=y
> # CONFIG_PVR_BUILD_DEBUG is not set
> CONFIG_PVR_NEED_PVR_DPF=y
> CONFIG_PVR_NEED_PVR_ASSERT=y
> CONFIG_PVR_PERCONTEXT_PB=y
> CONFIG_PVR_ACTIVE_POWER_MANAGEMENT=y
> CONFIG_PVR_ACTIVE_POWER_LATENCY_MS=100
> CONFIG_PVR_SGX_LOW_LATENCY_SCHEDULING=y
> CONFIG_PVR_USSE_EDM_STATUS_DEBUG=y
> CONFIG_PVR_DUMP_MK_TRACE=y
> # CONFIG_PVR_PDUMP is not set
> CONFIG_PVR_OMAP_DSS2=y
> 
> from http://releases.linaro.org/12.09/android/leb-panda/kernel_config
> 
> Are these the options you're looking for?

Yes, but is there a driver in the kernel tree? With 12.05 I couldn't find any sign of the SGX driver, neither in 'make menuconfig', nor in the source tree. I'll try again with 12.09 tomorrow.

Actually, I had hoped that at least one of these kernels would just work out-of-the-box. I've been bisecting kernel trees, trying patches and various configurations for almost two weeks, and it still doesn't work. The AOSP tree is full of half-finished commits that only compile/work with certain config options. It's not very high code quality.
I should add that 12.05 also has these config options, even though it lacks the driver.
Good news!

I finally got the self-build AOSP kernel working on the PandaBoard.

I found out the exact commit from the pre-built kernel's version number 3.0.8-g52f4764 (it's not 'g52f4764' ;). The pre-built kernel does not export /proc/config.gz options, so I created a config that's similar. Everything seems to work and and after booting finished B2G's login screen is show on the screen.

Currently, B2G crashes when the system suspends, but I guess this is just because of some incorrect kernel configuration or a bug in B2G itself. The error message is shown below. I'll try to improve the kernel config and make the bug go away. It looks like B2G works on an invalid gralloc buffer handle after the suspend happened. If anyone has an idea what the problem could be, let me know.


>>> snip >>>

I/IdleService( 1503): Get idle time: time since reset 4054 msec
I/IdleService( 1503): Idle timer callback: current idle time 4054 msec
I/IdleService( 1503): next timeout 4294967332516387 usec (4294967290945 msec from now)
I/IdleService( 1503): SetTimerExpiryIfBefore: next timeout 4294967332516387 usec
I/IdleService( 1503): reset timer expiry from 0 usec to 4294967332526387 usec
I/IdleService( 1503): Idle timer callback: tell observer 48cd0750 user is idle
I/IdleService( 1503): Get idle time: time since reset 4054 msec
W/GraphicBufferMapper( 1503): unregisterBuffer(0x432c0e40) failed -22 (Invalid argument)
E/GeckoConsole( 1503): GC(T+22.4) Total Time: 206.8ms, Compartments Collected: 109, Total Compartments: 109, MMU (20ms): 0%, MMU (50ms): 0%, SCC Sweep Total: 34.9ms, SCC Sweep 0
E/GeckoConsole( 1503):     Slice: 0, Pause: 31.4 (When: 0.0ms, Reason: CC_WAITING): Mark: 25.7ms, Mark Discard Code: 3.1ms, Mark Roots: 13.3ms
E/GeckoConsole( 1503):     Slice: 4, Pause: 60.1 (When: 4030.0ms, Reason: REFRESH_FRAME): Mark: 8.9ms, Mark Delayed: 0.5ms, Mark Weak: 0.4ms, Mark Gray: 7.6ms, Finalize Start Cs
E/GeckoConsole( 1503):     Slice: 7, Pause: 1.3 (When: 5423.5ms, Reason: REFRESH_FRAME): Sweep: 0.9ms, Deallocate: 0.4ms
E/GeckoConsole( 1503):     Totals: Wait Background Thread: 0.3ms, Mark: 129.8ms, Mark Discard Code: 3.1ms, Mark Roots: 13.3ms, Mar
E/GeckoConsole( 1503): CC(T+22.7) duration: 33ms, suspected: 959, visited: 1411 RCed and 1346 GCed, collected: 168 RCed and 317 GCed (485 waiting for GC)
E/GeckoConsole( 1503): ForgetSkippable 5 times before CC, min: 1 ms, max: 9 ms, avg: 3 ms, total: 16 ms, removed: 892
E/GeckoConsole( 1503): GC(T+27.2) Total Time: 177.5ms, Compartments Collected: 106, Total Compartments: 106, MMU (20ms): 0%, MMU (50ms): 0%, SCC Sweep Total: 27.3ms, SCC Sweep 1
E/GeckoConsole( 1503):     Slice: 0, Pause: 33.7 (When: 0.0ms, Reason: CC_WAITING): Begin Callback: 0.2ms, Mark: 27.3ms, Mark Discard Code: 4.3ms, Mark Roots: 8.3ms
E/GeckoConsole( 1503):     Slice: 4, Pause: 47.5 (When: 418.3ms, Reason: REFRESH_FRAME): Mark: 11.0ms, Mark Weak: 0.3ms, Mark Gray: 10.5ms, Finalize Start Callback: 1.2ms, Swees
E/GeckoConsole( 1503):     Slice: 7, Pause: 0.5 (When: 542.1ms, Reason: REFRESH_FRAME): Sweep: 0.3ms
E/GeckoConsole( 1503):     Totals: Begin Callback: 0.2ms, Mark: 117.0ms, Mark Discard Code: 4.3ms, Mark Roots: 8.3ms, Mark Weak: 
E/GeckoConsole( 1503): CC(T+28.7) duration: 24ms, suspected: 91, visited: 830 RCed and 1696 GCed, collected: 131 RCed and 211 GCed (342 waiting for GC)
E/GeckoConsole( 1503): ForgetSkippable 3 times before CC, min: 0 ms, max: 10 ms, avg: 4 ms, total: 13 ms, removed: 486
E/GeckoConsole( 1503): GC(T+33.2) Total Time: 167.5ms, Compartments Collected: 106, Total Compartments: 106, MMU (20ms): 0%, MMU (50ms): 0%, SCC Sweep Total: 23.9ms, SCC Sweep 0
E/GeckoConsole( 1503):     Slice: 0, Pause: 31.1 (When: 0.0ms, Reason: CC_WAITING): Mark: 24.9ms, Mark Discard Code: 4.8ms, Mark Roots: 2.9ms
E/GeckoConsole( 1503):     Slice: 4, Pause: 43.4 (When: 369.8ms, Reason: REFRESH_FRAME): Mark: 10.7ms, Mark Gray: 9.9ms, Mark Gray and Weak: 0.3ms, Sweep: 32.0ms, Sweep Comparts
E/GeckoConsole( 1503):     Slice: 7, Pause: 0.6 (When: 486.8ms, Reason: REFRESH_FRAME): Sweep: 0.2ms
E/GeckoConsole( 1503):     Totals: Mark: 112.0ms, Mark Discard Code: 4.8ms, Mark Roots: 2.9ms, Mark Delayed: 3.0ms, Mark Gray: 9.9ms, Mark Gray and Weak: 0.3ms, Sweep: 38.1ms, p
E/GeckoConsole( 1503): CC(T+33.2) duration: 29ms, suspected: 220, visited: 828 RCed and 1521 GCed, collected: 0 RCed and 0 GCed (0 waiting for GC)
E/GeckoConsole( 1503): ForgetSkippable 3 times before CC, min: 1 ms, max: 9 ms, avg: 4 ms, total: 13 ms, removed: 234
I/IdleService( 1503): Remove idle observer 48cd0750 (1 seconds)
[  107.857086] request_suspend_state: sleep (0->3) at 107849456790 (1970-01-01 00:01:47.843872074 UTC)
I/power   ( 1503): *** set_screen_state 0
[  107.867431] DSSCOMP: dsscomp_early_suspend
[  107.893188] DSSCOMP: blanked screen
I/Gecko   ( 1503): ###################################### forms.js loaded
I/Gecko   ( 1503): ###################################### forms.js loaded
E/GeckoConsole( 1503): Content JS INFO at app://system.gaiamobile.org/js/background_service.js:153 in bsm_open: %%%%% Launching Messages bg service as local
I/Gecko   ( 1503): ###################################### forms.js loaded
I/Gecko   ( 1503): ###################################### forms.js loaded
I/GeckoDump( 1503): XXX FIXME : Got a mozContentEvent: activity-choice
E/GeckoConsole( 1503): [JavaScript Error: "TypeError: conn.voice.network is null" {file: "app://sms.gaiamobile.org/js/background.js" line: 11}]
E/GeckoConsole( 1503): Content JS INFO at app://system.gaiamobile.org/js/window_manager.js:810 in createFrame: %%%%% Launching Homescreen as remote (OOP)
E/GeckoConsole( 1503): [JavaScript Error: "syntax error" {file: "app://sms.gaiamobile.org/js/blacklist.json" line: 1 column: 1 source: "["1515"]"}]
E/GeckoConsole( 1503): Content JS WARN at app://costcontrol.gaiamobile.org/js/service/cost_control_service.js:157 in _init: No ICCID available, using NOICCID as ICCID instead
E/GeckoConsole( 1503): [JavaScript Error: "not well-formed" {file: "app://costcontrol.gaiamobile.org/js/config.json" line: 1 column: 1 source: "{"enableon":{"724":[6,10,11,23]}]
E/GeckoConsole( 1503): Content JS INFO at app://costcontrol.gaiamobile.org/js/service/cost_control_service.js:442 in cc_afterConfiguration: Cost Control: data usage enabled.
E/GeckoConsole( 1503): Content JS WARN at app://costcontrol.gaiamobile.org/js/service/cost_control_service.js:450 in cc_afterConfiguration: Cost Control: non valid SIM card for.
I/Gecko   ( 1617): ###################################### forms.js loaded
I/Gecko   ( 1617): ###################################### forms.js loaded
E/profiler( 1662): Registering start signal
E/GeckoConsole( 1617): [JavaScript Error: "not well-formed" {file: "app://homescreen.gaiamobile.org/js/init.json" line: 1 column: 1 source: "{"grid":[["app://camera.gaiamobile.]
E/gralloc ( 1617): invalid gralloc handle (at 0x43447f00)
W/GraphicBufferMapper( 1617): registerBuffer(0x43447f00) failed -22 (Invalid argument)
E/gralloc ( 1617): invalid gralloc handle (at 0x43447f00)
W/GraphicBufferMapper( 1617): lock(...) failed -22 (Invalid argument)
E/gralloc ( 1617): invalid gralloc handle (at 0x43447f00)
W/GraphicBufferMapper( 1617): unlock(...) failed -22 (Invalid argument)
E/gralloc ( 1617): invalid gralloc handle (at 0x45305700)
W/GraphicBufferMapper( 1617): registerBuffer(0x45305700) failed -22 (Invalid argument)
E/gralloc ( 1617): invalid gralloc handle (at 0x45305700)
W/GraphicBufferMapper( 1617): lock(...) failed -22 (Invalid argument)
E/gralloc ( 1617): invalid gralloc handle (at 0x45305700)
W/GraphicBufferMapper( 1617): unlock(...) failed -22 (Invalid argument)
F/libc    ( 1617): Fatal signal 11 (SIGSEGV) at 0x00000008 (code=1)
E/GeckoConsole( 1503): GC(T+94.7) Total Time: 387.3ms, Compartments Collected: 115, Total Compartments: 115, MMU (20ms): 0%, MMU (50ms): 0%, SCC Sweep Total: 82.3ms, SCC Sweep 0
E/GeckoConsole( 1503):     Slice: 0, Pause: 51.9 (When: 0.0ms, Reason: SET_NEW_DOCUMENT): Begin Callback: 0.2ms, Purge: 0.4ms, Mark: 26.3ms, Mark Discard Code: 19.6ms, Mark Roos
E/GeckoConsole( 1503):     Slice: 2, Pause: 45.0 (When: 277.0ms, Reason: INTER_SLICE_GC): Mark: 42.8ms
E/GeckoConsole( 1503):     Slice: 3, Pause: 50.0 (When: 411.4ms, Reason: INTER_SLICE_GC): Wait Background Thread: 0.2ms, Mark: 47.9ms
E/GeckoConsole( 1503):     Slice: 5, Pause: 144.7 (When: 662.1ms, Reason: INTER_SLICE_GC): Mark: 26.7ms, Mark Weak: 0.7ms, Mark Gray: 22.8ms, Mark Gray and Weak: 0.9ms, Finaliz8
I/DEBUG   ( 1506): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG   ( 1506): Build fingerprint: 'Android/full_panda/panda:4.0.4.0.4.0.4/OPENMASTER/eng.tdz.20120927.161951:eng/test-keys'
I/DEBUG   ( 1506): pid: 1617, tid: 1617  >>> /system/b2g/plugin-container <<<
I/DEBUG   ( 1506): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000008
I/DEBUG   ( 1506):  r0 44046f88  r1 00000018  r2 00000000  r3 00000000
I/DEBUG   ( 1506):  r4 be925ca8  r5 be925b70  r6 4364c8d0  r7 440609c0
I/DEBUG   ( 1506):  r8 4255d5c8  r9 0063f9f0  10 44046f88  fp 413e9fd0
I/DEBUG   ( 1506):  ip 413ea040  sp be924d98  lr 40496b97  pc 40bf39be  cpsr 80000130
I/DEBUG   ( 1506):  d0  0000000000000000  d1  000000003ff00000
I/DEBUG   ( 1506):  d2  00000000000000f0  d3  000000000000003f
I/DEBUG   ( 1506):  d4  0000000000000000  d5  0000000000000000
I/DEBUG   ( 1506):  d6  0000000000000000  d7  3f80000000000000
I/DEBUG   ( 1506):  d8  0000000000000001  d9  0000000000000000
I/DEBUG   ( 1506):  d10 0000000000000000  d11 0000000000000000
I/DEBUG   ( 1506):  d12 0000000000000000  d13 0000000000000000
I/DEBUG   ( 1506):  d14 0000000000000000  d15 0000000000000000
I/DEBUG   ( 1506):  d16 0000000000000000  d17 0000000000000000
I/DEBUG   ( 1506):  d18 0000000000000000  d19 0000000000000000
I/DEBUG   ( 1506):  d20 0000000000000000  d21 4093b00000000000
I/DEBUG   ( 1506):  d22 4086800000000000  d23 0000000000000000
I/DEBUG   ( 1506):  d24 3e66376972bea4d0  d25 3fc39a09d078c69f
I/DEBUG   ( 1506):  d26 0000001000000000  d27 0000040000000000
I/DEBUG   ( 1506):  d28 0000000000800000  d29 0000000000400000
I/DEBUG   ( 1506):  d30 0000000000200000  d31 0000000000100000
I/DEBUG   ( 1506):  scr 60000011
I/DEBUG   ( 1506): 
E/GeckoConsole( 1503): CC(T+94.9) duration: 76ms, suspected: 564, visited: 1466 RCed and 1976 GCed, collected: 560 RCed and 1016 GCed (1576 waiting for GC)
E/GeckoConsole( 1503): ForgetSkippable 21 times before CC, min: 0 ms, max: 21 ms, avg: 2 ms, total: 45 ms, removed: 2581
I/DEBUG   ( 1506):          #00  pc 0083a9be  /system/b2g/libxul.so
I/DEBUG   ( 1506):          #01  lr 40496b97  /system/b2g/libxul.so
I/DEBUG   ( 1506): 
I/DEBUG   ( 1506): code around pc:
I/DEBUG   ( 1506): 40bf399c f1046471 920a02b0 624af50d 3a04950d  qd........Jb...:
I/DEBUG   ( 1506): 40bf39ac 9207930c e12046b8 a010f8d9 f8da4650  .....F .....PF..
I/DEBUG   ( 1506): 40bf39bc 689b3000 46054798 f7244620 f105f923  .0.h.G.F F$.#...
I/DEBUG   ( 1506): 40bf39cc 46200128 f36cf4a3 7a26edd5 edc49806  (. F..l...&z....
I/DEBUG   ( 1506): 40bf39dc edd57a1c edc47a27 f7be7a1d 9806fa7f  .z..'z...z......
I/DEBUG   ( 1506): 
I/DEBUG   ( 1506): code around lr:
I/DEBUG   ( 1506): 40496b74 46207be0 3a90ee17 60e71bdf 8b06ecbd  .{ F...:...`....
I/DEBUG   ( 1506): 40496b84 81f0e8bd 4604b510 44784806 f7236800  .......F.HxD.h#.
I/DEBUG   ( 1506): 40496b94 b128e994 33016843 68036043 60046163  ..(.Ch.3C`.hca.`
I/DEBUG   ( 1506): 40496ba4 bf00bd10 00f633aa 41f0e92d 46056803  .....3..-..A.h.F
I/DEBUG   ( 1506): 40496bb4 6203b923 62836243 e05a62c3 f1006983  #..bCb.b.bZ..i..
I/DEBUG   ( 1506): 
I/DEBUG   ( 1506): stack:
I/DEBUG   ( 1506):     be924d58  be925d58  [stack]
I/DEBUG   ( 1506):     be924d5c  414041f0  
I/DEBUG   ( 1506):     be924d60  be925d58  [stack]
I/DEBUG   ( 1506):     be924d64  40b18c61  /system/b2g/libxul.so
I/DEBUG   ( 1506):     be924d68  be925ca8  [stack]
I/DEBUG   ( 1506):     be924d6c  40496f9f  /system/b2g/libxul.so
I/DEBUG   ( 1506):     be924d70  be925ca8  [stack]
I/DEBUG   ( 1506):     be924d74  be925b70  [stack]
I/DEBUG   ( 1506):     be924d78  4364c8d0  
I/DEBUG   ( 1506):     be924d7c  440609c0  
I/DEBUG   ( 1506):     be924d80  4255d5c8  
I/DEBUG   ( 1506):     be924d84  40b18c79  /system/b2g/libxul.so
I/DEBUG   ( 1506):     be924d88  be925ca8  [stack]
I/DEBUG   ( 1506):     be924d8c  40b18c91  /system/b2g/libxul.so
I/DEBUG   ( 1506):     be924d90  df0027ad  
I/DEBUG   ( 1506):     be924d94  00000000  
I/DEBUG   ( 1506): #00 be924d98  00000008  
I/DEBUG   ( 1506):     be924d9c  000001ff  
I/DEBUG   ( 1506):     be924da0  00008000  /system/b2g/plugin-container
I/DEBUG   ( 1506):     be924da4  4406101e  
I/DEBUG   ( 1506):     be924da8  0000d72b  
I/DEBUG   ( 1506):     be924dac  45339bc0  
I/DEBUG   ( 1506):     be924db0  be925ddc  [stack]
I/DEBUG   ( 1506):     be924db4  be925a34  [stack]
I/DEBUG   ( 1506):     be924db8  0063f990  [heap]
I/DEBUG   ( 1506):     be924dbc  00000000  
I/DEBUG   ( 1506):     be924dc0  be925d58  [stack]
I/DEBUG   ( 1506):     be924dc4  be925eb4  [stack]
I/DEBUG   ( 1506):     be924dc8  ffffb158  
I/DEBUG   ( 1506):     be924dcc  4364c8d0  
I/DEBUG   ( 1506):     be924dd0  43cd1008  
I/DEBUG   ( 1506):     be924dd4  be924d68  [stack]
I/DEBUG   ( 1506):     be924dd8  00000000  
I/DEBUG   ( 1506):     be924ddc  00000000  
E/GeckoConsole( 1503): [JavaScript Error: "AbortError"]
E/GeckoConsole( 1503): [JavaScript Error: "AbortError"]
E/GeckoConsole( 1503): [JavaScript Error: "AbortError"]
E/GeckoConsole( 1503): [JavaScript Error: "AbortError"]
E/GeckoConsole( 1503): [JavaScript Error: "AbortError"]
E/GeckoConsole( 1503): Content JS INFO at app://system.gaiamobile.org/js/window_manager.js:810 in createFrame: %%%%% Launching Homescreen as remote (OOP)
I/Gecko   ( 1662): ###################################### forms.js loaded
I/Gecko   ( 1662): ###################################### forms.js loaded
E/GeckoConsole( 1503): GC(T+99.9) Total Time: 302.7ms, Compartments Collected: 115, Total Compartments: 116, MMU (20ms): 0%, MMU (50ms): 0%, SCC Sweep Total: 37.8ms, SCC Sweep 1
E/GeckoConsole( 1503):     Slice: 0, Pause: 34.0 (When: 0.0ms, Reason: CC_WAITING): Mark: 25.1ms, Mark Discard Code: 5.7ms, Mark Roots: 16.0ms
E/GeckoConsole( 1503):     Slice: 1, Pause: 44.9 (When: 127.8ms, Reason: INTER_SLICE_GC): Mark: 42.7ms
E/GeckoConsole( 1503):     Slice: 2, Pause: 44.2 (When: 266.1ms, Reason: INTER_SLICE_GC): Mark: 42.9ms
E/GeckoConsole( 1503):     Slice: 3, Pause: 42.7 (When: 401.8ms, Reason: INTER_SLICE_GC): Mark: 41.3ms
E/GeckoConsole( 1503):     Slice: 5, Pause: 79.7 (When: 658.0ms, Reason: INTER_SLICE_GC): Wait Background Thread: 0.2ms, Mark: 20.8ms, Mark Delayed: 1.7ms, Mark Weak: 3.1ms, Mae
E/profiler( 1674): Registering start signal
E/GeckoConsole( 1503): CC(T+100.2) duration: 46ms, suspected: 255, visited: 786 RCed and 888 GCed, collected: 23 RCed and 0 GCed (23 waiting for GC)
E/GeckoConsole( 1503): ForgetSkippable 3 times before CC, min: 0 ms, max: 18 ms, avg: 6 ms, total: 20 ms, removed: 423
E/gralloc ( 1662): invalid gralloc handle (at 0x426fcf00)
W/GraphicBufferMapper( 1662): registerBuffer(0x426fcf00) failed -22 (Invalid argument)
E/gralloc ( 1662): invalid gralloc handle (at 0x426fcf00)
W/GraphicBufferMapper( 1662): lock(...) failed -22 (Invalid argument)
F/libc    ( 1662): Fatal signal 11 (SIGSEGV) at 0xbe8cd000 (code=1)
I/DEBUG   ( 1506): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG   ( 1506): Build fingerprint: 'Android/full_panda/panda:4.0.4.0.4.0.4/OPENMASTER/eng.tdz.20120927.161951:eng/test-keys'
I/DEBUG   ( 1506): pid: 1662, tid: 1662  >>> $2�<9.�(3�(70�951�871�751�<�<41�;5�<:2�86�)5�:7/�:3�*$ϳ830�83�7#�..(�.2#�3+)�,$2�<9.�(31�)'�2.&�6*(�3-(�2(ճ--$�2,$�.))�,5
I/DEBUG   ( 1506): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr be8cd000
I/DEBUG   ( 1506):  r0 00000092  r1 000004e8  r2 be8ccfe0  r3 000002e0
I/DEBUG   ( 1506):  r4 43fadb00  r5 000004ec  r6 be8cd000  r7 000002d0
I/DEBUG   ( 1506):  r8 000000dd  r9 00004e80  10 0000025e  fp 43fadb00
I/DEBUG   ( 1506):  ip be8cc728  sp be8c7900  lr 00000000  pc 40d2d254  cpsr 20000110
I/DEBUG   ( 1506):  d0  1a1a1a1a1a1a1a1a  d1  1616161616161616
I/DEBUG   ( 1506):  d2  1010101010101010  d3  b3b3b3b3b3b3b3b3
I/DEBUG   ( 1506):  d4  001f000e000e0022  d5  00000022001d001d
I/DEBUG   ( 1506):  d6  001f0021001d0022  d7  00000000001f0021
I/DEBUG   ( 1506):  d8  3fe6666660000000  d9  000004ec000002d0
I/DEBUG   ( 1506):  d10 3fe0000000000000  d11 0000000000000000
I/DEBUG   ( 1506):  d12 0000000000000000  d13 0000000000000000
I/DEBUG   ( 1506):  d14 0000000000000000  d15 0000000000000000
I/DEBUG   ( 1506):  d16 20100ed81dfc2224  d17 000020a820a820a8
I/DEBUG   ( 1506):  d18 22bc1e94205c23ec  d19 00001dfc22700d5c
I/DEBUG   ( 1506):  d20 1e940df40df42224  d21 000021d81ccc1d64
I/DEBUG   ( 1506):  d22 1f2c21401d182270  d23 000000001f2c20f4
I/DEBUG   ( 1506):  d24 4c4c4c4c4c4c4c4c  d25 0000002a002a0000
I/DEBUG   ( 1506):  d26 0000003400000000  d27 0000003800380000
I/DEBUG   ( 1506):  d28 00212121200f1e22  d29 001e230d231f2024
I/DEBUG   ( 1506):  d30 00221d1e1f0e0e22  d31 00001f211f211d23
I/DEBUG   ( 1506):  scr 20000011
I/DEBUG   ( 1506): 
I/DEBUG   ( 1506):          #00  pc 00920254  /system/b2g/libxul.so
I/DEBUG   ( 1506):          #01  lr 00000000  <unknown>
I/DEBUG   ( 1506): 
I/DEBUG   ( 1506): code around pc:
I/DEBUG   ( 1506): 40d2d234 f3d8c270 f3d8e272 f3984274 f3986276  p...r...tB..vb..
I/DEBUG   ( 1506): 40d2d244 f3ccc4a0 f3ced4a2 f3c4e424 f3c6f426  ........$...&...
I/DEBUG   ( 1506): 40d2d254 f426402d f340c07c e28aa008 e319000f  -@&.|.@.........
I/DEBUG   ( 1506): 40d2d264 128aa008 12499001 f342e07e e15a0007  ......I.~.B...Z.
I/DEBUG   ( 1506): 40d2d274 f3c80c84 f7dcf10a f3c82c85 a04aa007  .........,....J.
I/DEBUG   ( 1506): 
I/DEBUG   ( 1506): code around lr:
I/DEBUG   ( 1506): 00000000 ffffffff ffffffff ffffffff ffffffff  ................
I/DEBUG   ( 1506): 00000010 ffffffff ffffffff ffffffff ffffffff  ................
I/DEBUG   ( 1506): 00000020 ffffffff ffffffff ffffffff ffffffff  ................
I/DEBUG   ( 1506): 00000030 ffffffff ffffffff ffffffff ffffffff  ................
I/DEBUG   ( 1506): 00000040 ffffffff ffffffff ffffffff ffffffff  ................
I/DEBUG   ( 1506): 
I/DEBUG   ( 1506): memory map around addr be8cd000:
I/DEBUG   ( 1506): be8ac000-be8cd000 [stack]
I/DEBUG   ( 1506): (no map for address)
I/DEBUG   ( 1506): ffff0000-ffff1000 [vectors]
I/DEBUG   ( 1506): 
I/DEBUG   ( 1506): stack:
I/DEBUG   ( 1506):     be8c78c0  00000000  
I/DEBUG   ( 1506):     be8c78c4  40d1365f  /system/b2g/libxul.so
I/DEBUG   ( 1506):     be8c78c8  00000000  
I/DEBUG   ( 1506):     be8c78cc  40d132b5  /system/b2g/libxul.so
I/DEBUG   ( 1506):     be8c78d0  00000000  
I/DEBUG   ( 1506):     be8c78d4  00000001  
I/DEBUG   ( 1506):     be8c78d8  00000001  
I/DEBUG   ( 1506):     be8c78dc  be8c7914  [stack]
I/DEBUG   ( 1506):     be8c78e0  00000001  
I/DEBUG   ( 1506):     be8c78e4  00000000  
I/DEBUG   ( 1506):     be8c78e8  43fadbc0  
I/DEBUG   ( 1506):     be8c78ec  be8c7914  [stack]
I/DEBUG   ( 1506):     be8c78f0  00000000  
I/DEBUG   ( 1506):     be8c78f4  00000000  
I/DEBUG   ( 1506):     be8c78f8  df0027ad  
I/DEBUG   ( 1506):     be8c78fc  00000000  
I/DEBUG   ( 1506): #00 be8c7900  43fadb00  
I/DEBUG   ( 1506):     be8c7904  000004ec  
I/DEBUG   ( 1506):     be8c7908  000002d0  
I/DEBUG   ( 1506):     be8c790c  00000000  
I/DEBUG   ( 1506):     be8c7910  00000000  
I/DEBUG   ( 1506):     be8c7914  00000000  
I/DEBUG   ( 1506):     be8c7918  00000000  
I/DEBUG   ( 1506):     be8c791c  00000000  
I/DEBUG   ( 1506):     be8c7920  00000003  
I/DEBUG   ( 1506):     be8c7924  40d29125  /system/b2g/libxul.so
I/DEBUG   ( 1506):     be8c7928  b310161a  
I/DEBUG   ( 1506):     be8c792c  00000000  
I/DEBUG   ( 1506):     be8c7930  be8c79e8  [stack]
I/DEBUG   ( 1506):     be8c7934  be8c798c  [stack]
I/DEBUG   ( 1506):     be8c7938  00000000  
I/DEBUG   ( 1506):     be8c793c  00000000  
I/DEBUG   ( 1506):     be8c7940  00000000  
I/DEBUG   ( 1506):     be8c7944  40ce9441  /system/b2g/libxul.so
I/DEBUG   ( 1506): debuggerd committing suicide to free the zombie!
I/DEBUG   ( 1682): debuggerd: Sep 27 2012 16:25:00
E/GeckoConsole( 1503): Content JS INFO at app://system.gaiamobile.org/js/window_manager.js:810 in createFrame: %%%%% Launching Homescreen as remote (OOP)
I/Gecko   ( 1674): ###################################### forms.js loaded
I/Gecko   ( 1674): ###################################### forms.js loaded
E/GeckoConsole( 1674): [JavaScript Error: "not well-formed" {file: "app://homescreen.gaiamobile.org/js/init.json" line: 1 column: 1 source: "{"grid":[["app://camera.gaiamobile.]
E/profiler( 1687): Registering start signal
E/GeckoConsole( 1503): [JavaScript Error: "not well-formed" {file: "app://homescreen.gaiamobile.org/js/init.json" line: 1 column: 1 source: "{"grid":[["app://camera.gaiamobile.]
E/gralloc ( 1674): invalid gralloc handle (at 0x426f9f00)
W/GraphicBufferMapper( 1674): registerBuffer(0x426f9f00) failed -22 (Invalid argument)
E/gralloc ( 1674): invalid gralloc handle (at 0x426f9f00)
W/GraphicBufferMapper( 1674): lock(...) failed -22 (Invalid argument)
E/gralloc ( 1674): invalid gralloc handle (at 0x426f9f00)
W/GraphicBufferMapper( 1674): unlock(...) failed -22 (Invalid argument)
E/gralloc ( 1674): invalid gralloc handle (at 0x4488bd00)
W/GraphicBufferMapper( 1674): registerBuffer(0x4488bd00) failed -22 (Invalid argument)
E/gralloc ( 1674): invalid gralloc handle (at 0x4488bd00)
W/GraphicBufferMapper( 1674): lock(...) failed -22 (Invalid argument)
Michael,

the 4 patches on top of the old kernel are available at

https://github.com/tdz/android-kernel-omap/compare/bug-778248.
The fixes for this problem landed yesterday. I'd like to close this bug report if no one objects.
The reported crash did not occur any more and was probably related to the initial setup and/or https://bugzilla.mozilla.org/show_bug.cgi?id=801658. The kernel, patches and config have been released on github, and the binary kernel is in the upstream B2G repository. Since no one objected, I'm closing this bug.
Status: ASSIGNED → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED
blocking-basecamp: ? → +
status-firefox18: --- → fixed
status-firefox19: --- → fixed
status-firefox20: --- → fixed
Product: mozilla.org → Release Engineering
Component: Platform Support → Buildduty
Product: Release Engineering → Infrastructure & Operations
You need to log in before you can comment on or make changes to this bug.