[Open_]Boot failed with genlock error

VERIFIED FIXED in Firefox 22

Status

Firefox OS
General
P1
blocker
VERIFIED FIXED
5 years ago
5 years ago

People

(Reporter: cyvins, Assigned: mwu)

Tracking

unspecified
B2G C4 (2jan on)
ARM
Gonk (Firefox OS)
Bug Flags:
in-moztrap -

Firefox Tracking Flags

(blocking-b2g:tef+, firefox20 wontfix, firefox21 wontfix, firefox22 fixed, b2g18 fixed, b2g18-v1.0.0 wontfix, b2g18-v1.0.1 verified)

Details

(Whiteboard: QARegressExclude)

Attachments

(2 attachments)

(Reporter)

Description

5 years ago
Created attachment 723073 [details]
adblog.txt

User Agent: Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.24 Safari/534.7

Steps to reproduce:

Make a build using the latest code
Load the image to the device 
Boot up the device


Actual results:

The device can not boot successfully, staying on the boot screen


Expected results:

The device should boot successfully
(Reporter)

Comment 1

5 years ago
attachment is logcat output.

From the logcat message, I found these error:

I/Gecko   (  111): -*- QCContentHelper_QC_B2G: system message listener is now ready
E/libgenlock(  111): perform_lock_unlock_operation: GENLOCK_IOC_LOCK failed (lockType0x1, err=Invalid argument fd=15)
E/msm7627a.gralloc(  111): gralloc_lock: genlock_lock_buffer (lockType=0x2) failed                
W/Gonk    (  111): Failed to lock buffer_handle_t                                                 
E/libgenlock(  111): perform_lock_unlock_operation: GENLOCK_IOC_LOCK failed (lockType0x1, err=Invalid argument fd=15)
E/msm7627a.gralloc(  111): gralloc_lock: genlock_lock_buffer (lockType=0x2) failed
W/Gonk    (  111): Failed to lock buffer_handle_t
E/WifiHW  (  111): 'AP_SCAN 1'

W/Adreno200-EGLSUB(  111): <GetBackBuffer:1903>: genlock_wait failed
E/Adreno200-EGL(  111): <qeglDrvAPI_eglSwapBuffers:3388>: EGL_BAD_ALLOC
E/HWComposer(  111): Hardware device failed to render
E/libgenlock(  111): genlock_wait: GENLOCK_IOC_WAIT failed (err=Connection timed out)
W/Adreno200-EGLSUB(  111): <GetBackBuffer:1903>: genlock_wait failed
E/Adreno200-EGL(  111): <qeglDrvAPI_eglSwapBuffers:3388>: EGL_BAD_ALLOC
D/memalloc(  111): /dev/pmem: Allocated buffer base:0x4bf23000 size:12288 offset:1466368 fd:140
D/memalloc(  400): /dev/pmem: Mapped buffer base:0x45800000 size:1478656 offset:1466368 fd:45
I/Adreno200-EGLSUB(  111): <CreateImage:896>: Android Image

=========================
1) the build is based on the below commit:
gecko: 3916db8cb84dce2afd90c01254692c33078b8b68
gaia: 91ad7fb9dc82e87021a2bac5900f2dd91f124405

2) I tried to disable boot animation(removing /system/media/bootanimation.zip), and the error would not happen 

3) tried to disable hwcomposer, the bug is still existing

4) build from the below commit works well
gaia: a41c7921fbf0839b894f277261dad4a22507f979
gecko: b3cd9efc36ce4556117c56ae11807d839023f603
Severity: normal → blocker
OS: All → Gonk (Firefox OS)
Priority: -- → P1
Hardware: All → ARM
(Reporter)

Comment 2

5 years ago
similar with Bug 821480 ?
blocking-b2g: --- → tef+
Flags: needinfo?(dwilson)
Assignee: nobody → dwilson
Flags: needinfo?(dwilson)
@Cyvins In what device and branch are you seeing this?
(In reply to Diego Wilson [:diego] from comment #3)
> @Cyvins In what device and branch are you seeing this?

wrt. branch, please just provide the AU number that this is seen on.
(Reporter)

Comment 5

5 years ago
I am using the v790 device,and both AU30,AU31 have this issue, AU27 does not have such issue, the current cdr code is AU31. thanks.
(Reporter)

Comment 6

5 years ago
it's v1.0.1 branch.
(In reply to cyvins from comment #5)
> I am using the v790 device,and both AU30,AU31 have this issue, AU27 does not
> have such issue, the current cdr code is AU31. thanks.

I'm not familiar with that device. Who's the OEM?
(Reporter)

Comment 8

5 years ago
I will try kis device, I think it should have such issue, and Michael should have this v790 device.
Yep we have both.  Should be able to check this here on Monday.
I loaded the latest from the v1.0.1 branch of gecko/gaia on the v790 device. I didn't see any gralloc error.

@cyvins, what branch are you trying to test?

Comment 11

5 years ago
Hi, Diego

Our build is based on the below commit of gecko/gaia, branch v1.0.1, AU31
gaia: revision="91ad7fb9dc82e87021a2bac5900f2dd91f124405"
gecko: revision="3916db8cb84dce2afd90c01254692c33078b8b68"

could tell me the commit id that you have tested?
and did you load the image built from cdr or just update the gecko/gaia? 
Thanks.

Comment 12

5 years ago
do you think it is the same issue with bug 847207?
The problem goes away when I remove /system/media/bootanimation.zip. I noticed v790 builds have a splash.img. I haven't seen that in other equivalent devices. Any chance this bootanimation.zip and splash.img are somehow clashing?

Updated

5 years ago
Assignee: dwilson → mwu
(Assignee)

Comment 14

5 years ago
Created attachment 726314 [details] [diff] [review]
Wait for boot animation before initializing layer manager
(Assignee)

Comment 15

5 years ago
Can someone try this patch and see if it fixes the issue? It works for me on the Keon, but I've had more difficulty reproducing on the open.

This patch forces us to wait for the boot animation to finish animating before touching any opengles stuff on the gecko side. Currently, we only wait for the boot animation before attempting to draw, so gecko attempts to do opengl init in parallel.
The patch fixes my ZTE open. I say land it! :)

Comment 17

5 years ago
I will try it. Many thanks.

Comment 18

5 years ago
This issue can be fixed by the attached patch. Thanks.
(Assignee)

Comment 19

5 years ago
Comment on attachment 726314 [details] [diff] [review]
Wait for boot animation before initializing layer manager

Andreas, do you mind reviewing this patch? I think we're a bit short on gonk widget peers.

This patch forces the boot animation thread to stop running before attempting to initialize opengl. It stops the boot animation before we attempt to create an opengl layer manager. Apparently initializing opengl while the animation is running randomly causes bad things to happen.
Attachment #726314 - Flags: review?(gal)
Attachment #726314 - Flags: review?(gal) → review+
(Assignee)

Comment 20

5 years ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/1356923ff93e
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
(Assignee)

Updated

5 years ago
Duplicate of this bug: 847207
https://hg.mozilla.org/mozilla-central/rev/1356923ff93e
Status: ASSIGNED → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
https://hg.mozilla.org/releases/mozilla-b2g18/rev/4a4ed7068ea0
https://hg.mozilla.org/releases/mozilla-b2g18_v1_0_1/rev/b2cb74a51494
status-b2g18: --- → fixed
status-b2g18-v1.0.0: --- → wontfix
status-b2g18-v1.0.1: --- → fixed
status-firefox20: --- → wontfix
status-firefox21: --- → wontfix
status-firefox22: --- → fixed
Target Milestone: --- → B2G C4 (2jan on)

Comment 24

5 years ago
Does not make sense to create a regression issue.
Flags: in-moztrap-

Updated

5 years ago
Whiteboard: QARegressExclude

Comment 25

5 years ago
Verified as fixed in build:
Kernel Date: Dec 5
Gecko: http://hg.mozilla.org/releases/mozilla-b2g18_v1_0_1/rev/ccec751a468e
Gaia: ee0bef61c0a25c806dd1eec5a4e047bc418a5f73
Status: RESOLVED → VERIFIED
status-b2g18-v1.0.1: fixed → verified
You need to log in before you can comment on or make changes to this bug.