Closed Bug 993993 Opened 6 years ago Closed 2 years ago

[tarako] a white screen appears while changing wallpaper from Setting (repro rate 1/10)

Categories

(Firefox OS Graveyard :: Gaia::Settings, defect, P3)

Other
Gonk (Firefox OS)
defect

Tracking

(tracking-b2g:backlog)

RESOLVED WONTFIX
tracking-b2g backlog

People

(Reporter: angelc04, Unassigned)

References

Details

(Keywords: memory-footprint, perf, Whiteboard: [c=memory p= s= u=tarako] [MemShrink:P3] OOM [sprd296553])

Attachments

(4 files)

Steps to reproduce
------------------------------------------------------------------------
1. Launch Settings
2. go to Settings -> Display
3. Tap on wallpaper -> Select Gallery -> Select a pic and tap Done
4. Repeat step 3 for several times
   --> You will be able to see a white screen appears. Tap on Home button can recover from this.


Test build
----------------------------------------------------------
Gaia      643f3e6676cbb89c62708a9f7cbef2edc795a552
Gecko     https://hg.mozilla.org/releases/mozilla-b2g28_v1_3t/rev/a5e49b9b5c9f
BuildID   20140408164004
Version   28.1
ro.build.version.incremental=eng.cltbld.20140408.202416
ro.build.date=Tue Apr  8 20:24:23 EDT 2014
I'm able to reproduce the issue with following log. It's happened while I picked wallpaper 10 times more. Then, I tap "Gallery" in activities menus. It will show a black screen.

E/GeckoConsole(   84): [JavaScript Error: "AbortError"]
E/GeckoConsole(   84): UTM:SVC TimerManager:notify - notified timerID: user-agent-updates-timer
E/GeckoConsole(   84): UTM:SVC TimerManager:registerTimer - id: user-agent-updates-timer
E/GeckoConsole(  489): [JavaScript Error: "[Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIProperties.get]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: resource://gre/modules/FormHistory.jsm :: <TOP_LEVEL> :: line 32"  data: no]" {file: "resource://gre/modules/FormHistory.jsm" line: 32}]

Is any gecko devs help to investigate the issue?
More info:
After white screen appears, repeat step 3, Gallery could not be launched when user tap on wallpaper and select Gallery.
blocking-b2g: --- → 1.3T?
ni? on myself to check to see if the process gets killed.
Flags: needinfo?(nhirata.bugzilla)
Update latest build version:

===== check_versions.sh =====
Gaia      98ce1340a6c27694f3b32a36b772e8da57caf19a
Gecko     f6893b30657b8b8208a5c9de8b6b96b9a09a3fb1
BuildID   20140410042058
Version   28.1
ro.build.version.incremental=250
ro.build.date=Thu Apr 10 04:16:35 CST 2014

===== adb shell dumpstate =====
Build: sp6821a_gonk-userdebug 4.0.4.0.4.0.4 OPENMASTER 250 test-keys

===== symptom =====
Test 1. Settings -> Display -> Wallpaper -> Gallery (activity pick request with "disposition": "inline") -> select pic and click 'done' -> back to Settings::Display::Wallpaper -> ...(pick Wallpaper from Gallery again)
Result: Get a blank screen. Then, it cannot set wallpaper via Gallery.
dmesg log: dmesg_settings_killed_while_pick_from_gallery.txt
Console log: 

I/GeckoDump(  538): XXX FIXME : Got a mozContentEvent: activity-choice
E/GeckoConsole(  538): [JavaScript Error: "[Exception... "Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIMessageSender.sendAsyncMessage]"  nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)"  location: "JS frame :: jar:file:///system/b2g/omni.ja!/components/SystemMessageInternal.js :: _sendMessageCommon :: line 620"  data: no]" {file: "jar:file:///system/b2g/omni.ja!/components/SystemMessageInternal.js" line: 620}]

E/GeckoConsole(  538): [JavaScript Error: "[Exception... "Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIMessageSender.sendAsyncMessage]"  nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)"  location: "JS frame :: jar:file:///system/b2g/omni.ja!/components/SystemMessageInternal.js :: _sendMessageCommon :: line 620"  data: no]" {file: "jar:file:///system/b2g/omni.ja!/components/SystemMessageInternal.js" line: 620}] 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Test 2. Settings -> Display -> Wallpaper -> Wallpaper (activity pick request with "disposition": "inline") -> select pic -> back to Settings::Display::Wallpaper -> ...(pick Wallpaper from Wallpaper again)
Result: Get a blank screen. Then, it cannot set wallpaper via Wallpaper.
dmesg log: dmesg_settings_killed_while_pick_from_wallpaper.txt
Console log: 

I/GeckoDump(  538): XXX FIXME : Got a mozContentEvent: activity-choice
E/GeckoConsole(  538): [JavaScript Error: "[Exception... "Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIMessageSender.sendAsyncMessage]"  nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)"  location: "JS frame :: jar:file:///system/b2g/omni.ja!/components/SystemMessageInternal.js :: _sendMessageCommon :: line 620"  data: no]" {file: "jar:file:///system/b2g/omni.ja!/components/SystemMessageInternal.js" line: 620}]

E/GeckoConsole(  538): [JavaScript Error: "[Exception... "Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIMessageSender.sendAsyncMessage]"  nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)"  location: "JS frame :: jar:file:///system/b2g/omni.ja!/components/SystemMessageInternal.js :: _sendMessageCommon :: line 620"  data: no]" {file: "jar:file:///system/b2g/omni.ja!/components/SystemMessageInternal.js" line: 620}]

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Test 3. Settings -> Display -> Wallpaper -> Camera (activity pick request with "disposition": "inline") -> select pic -> back to Settings::Display::Wallpaper -> ...(pick Wallpaper from Wallpaper again)
Result: Get a **black** screen. Then, it cannot set wallpaper via Camera.
dmesg log: dmesg_settings_killed_while_pick_from_camera.txt
Console log: 
I/GeckoDump(  538): XXX FIXME : Got a mozContentEvent: activity-choice
I/Gecko   (  538): [Parent 538] WARNING: waitpid failed pid:2892 errno:10: file /android/builder/repo/sp6821a_gonk4.0/B2G/gecko/ipc/chromium/src/base/process_util_posix.cc, line 254
(In reply to Ian Liu [:ianliu] from comment #4)
> ===== symptom =====
> Test 1. Settings -> Display -> Wallpaper -> Gallery (activity pick request
> with "disposition": "inline") -> select pic and click 'done' -> back to
> Settings::Display::Wallpaper -> ...(pick Wallpaper from Gallery again)
> Result: Get a blank screen. Then, it cannot set wallpaper via Gallery.
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Test 2. Settings -> Display -> Wallpaper -> Wallpaper (activity pick request
> with "disposition": "inline") -> select pic -> back to
> Settings::Display::Wallpaper -> ...(pick Wallpaper from Wallpaper again)
> Result: Get a blank screen. Then, it cannot set wallpaper via Wallpaper.
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Test 3. Settings -> Display -> Wallpaper -> Camera (activity pick request
> with "disposition": "inline") -> select pic -> back to
> Settings::Display::Wallpaper -> ...(pick Wallpaper from Wallpaper again)
> Result: Get a **black** screen. Then, it cannot set wallpaper via Camera.

In test 1 and 3(Gallery, Camera), we can launch Gallery, Gamera from home screen. Then, Settings app is able to set wallpaper via pick request from them.

In test 2, I cannot find a way to make Settings app set wallpaper via pick request from Wallpaper.
In comment 5, 6, and 7, there is no "Out of memory" in dmesg log. But Settings app is killed while it's adj 2.

<4>0[ 1452.093795] lowmem_shrink select 1635 (Settings), adj 2, size 13357, to kill
<4>0[ 1452.093872] lowmem_shrink send sigkill to 1635 (Settings), adj 2, size 13357
(In reply to Ian Liu [:ianliu] from comment #8)
> (In reply to Ian Liu [:ianliu] from comment #4)
> 
> In test 1 and 3(Gallery, Camera), we can launch Gallery, Gamera from home
> screen. Then, Settings app is able to set wallpaper via pick request from
> them.

Is here any idea that some way to make the activity chain work again?
triage: given the reproduce rate is 1/10, let's not block the release with this. may consider uplift when we have solution
blocking-b2g: 1.3T? → -
Is it same as bug 991023?
The error log is similar.
E/GeckoConsole(  538): [JavaScript Error: "[Exception... "Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIMessageSender.sendAsyncMessage]"  nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)"  location: "JS frame :: jar:file:///system/b2g/omni.ja!/components/SystemMessageInternal.js :: _sendMessageCommon :: line 620"  data: no]" {file: "jar:file:///system/b2g/omni.ja!/components/SystemMessageInternal.js" line: 620}]
Flags: needinfo?(iliu)
When I tried to reproduce this issue with nightly connected.At first,the <div id=homescreen> is selected,but when the issue occurs,I found <div id="windows"> is selected.I don't know why.Maybe it's something related with bug 991023.
Also find this error when the issue occurs:

E/GeckoConsole(   84): [JavaScript Error: "NS_ERROR_FAILURE: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIMessageSender.sendAsyncMessage]" {file: "resource://gre/modules/ActivitiesService.jsm" line: 360}]
Maybe also related with bug 992505.
It seems that all these bugs are about pick activity from gallery.
(In reply to yang.zhao from comment #13)
> When I tried to reproduce this issue with nightly connected.At first,the
> <div id=homescreen> is selected,but when the issue occurs,I found <div
> id="windows"> is selected.I don't know why.Maybe it's something related with
> bug 991023.

No, it's not the same with bug 991023. Bug 991023 is already fixed but I can still reproduce this issue on latest build.
<4>0[ 1452.093795] lowmem_shrink select 1635 (Settings), adj 2, size 13357, to kill
<4>0[ 1452.093872] lowmem_shrink send sigkill to 1635 (Settings), adj 2, size 13357

<4>0[ 1162.493971] lowmem_shrink select 1359 (Settings), adj 2, size 14334, to kill
<4>0[ 1162.493993] lowmem_shrink send sigkill to 1359 (Settings), adj 2, size 14334
Settings app gets killed due to OOM.

I tried this with the today's build and I had to fill the memory before I was able to hit the bug.
Flags: needinfo?(nhirata.bugzilla)
Keywords: footprint, perf
Whiteboard: OOM → OOM, [c=memory p= s= u=] [MemShrink]
The issue is still able to be reproduced. The rate should be 3/5. I do "make install-media-samples" to fill test samples. I don't see error log with "SystemMessageInternal.js". But I also see error log with "ActivitiesService.jsm". At the same time, Settings app was killed. Please reference comment 14, 17.
Flags: needinfo?(iliu)
====== Build version ======
Gaia      44ff6248c28ff83b9ad1161847a176399f93d3bb
Gecko     https://hg.mozilla.org/releases/mozilla-b2g28_v1_3t/rev/72055108f470
BuildID   20140414164002
Version   28.1
ro.build.version.incremental=eng.dannyliang.20140412.101028
ro.build.date=六  4月 12 10:16:11 CST 2014

The fixed patch of Bug 991023 is in the build for test. The issue is still happened.
Since bug 991023 is fixed, I think that we have to focus on error log with "ActivitiesService.jsm". I see error log of bug 992505 is same with here. The issue here is easy to reproduce because Settings app is occupied some system resources.

Hi Fabrice, could you please help to investigate the similar symptom here? Thanks.
Flags: needinfo?(fabrice)
See Also: → 992505
When the issue occurs,I found there is no settings app in b2g-ps:


APPLICATION      USER     PID   PPID  VSIZE  RSS     WCHAN    PC         NAME
b2g              root      83    1     142528 38696 ffffffff 40056518 S /system/b2g/b2g
(Nuwa)           root      329   83    51680  4348  ffffffff 40086518 S /system/b2g/plugin-container
Homescreen       app_2963  2963  329   65920  21624 ffffffff 40086518 S /system/b2g/plugin-container
(Preallocated a  root      3039  329   59864  14796 ffffffff 40086518 S /system/b2g/plugin-container
Whiteboard: OOM, [c=memory p= s= u=] [MemShrink] → OOM, [c=memory p= s= u=] [MemShrink:P3]
Does anyone do see this issue?
We've met this log many times if there is a white screen and so on:
"E/GeckoConsole(   84): [JavaScript Error: "NS_ERROR_FAILURE: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIMessageSender.sendAsyncMessage]" {file: "resource://gre/modules/ActivitiesService.jsm" line: 360}]"
This could mean that the target app was killed before the message was sent.
Yes, we're just dying in an OOM situation. Not much we can do short term here. It's all dependent on the image size.
Flags: needinfo?(fabrice)
Attached file adb logcat .log
There is another way to reproduce
--------------------------------------------------------------------------------
1. Launch Dialer
2. Input some number
3. Tap on Add contact -> select Create new contact
4. On New contact page, tap on "Add picture" and select a pic from Gallery
   Communication will be killed by LMK after this.
5. Repeat 1~3
   --> There was no response when user tap on "Create new contact". This is a similar case with bug 991023.

Attached is the adb log I get. Test time starts: 04-17 11:05:47.270

To be simple:
Dialer -> Contact -> Gallery -> LMK kill
Dialer -> Contact activity fail
Blocks: 995119
Whiteboard: OOM, [c=memory p= s= u=] [MemShrink:P3] → OOM, [c=memory p= s= u=] [MemShrink:P3][sprd296553]
blocking-b2g: - → 1.3T?
Fabrice, we have limited camera and gallery max size, then can we group app for this case?
Whiteboard: OOM, [c=memory p= s= u=] [MemShrink:P3][sprd296553] → OOM, [c=memory p= s= u=] [MemShrink:P3][sprd296553] [partner-blocker]
lets retest this when bug 997051 lands
Whiteboard: OOM, [c=memory p= s= u=] [MemShrink:P3][sprd296553] [partner-blocker] → OOM [c=memory p= s= u=] [MemShrink:P3][sprd296553] [partner-blocker]
pcheng, now that bug 997051 has landed, can you please retest? thanks
Flags: needinfo?(pcheng)
(In reply to Joe Cheng [:jcheng] from comment #28)
> pcheng, now that bug 997051 has landed, can you please retest? thanks

This is still reproducible on latest pvt build.

Even we filter out large pics, we can still see this problem if we repeat the steps for more times. So it seems to me that we didn't free memory after finish changing wallpaper. 

Please correct me if I'm wrong and let me know if you need more information.

Test build
-----------------------------------------------------------------
Gaia      3f1d8332d127f1d6bc0fdbb08146ce1deb0efbc0
Gecko     https://hg.mozilla.org/releases/mozilla-b2g28_v1_3t/rev/5da76152c2bd
BuildID   20140421164001
Version   28.1
ro.build.version.incremental=eng.cltbld.20140421.201353
ro.build.date=Mon Apr 21 20:14:01 EDT 2014
Flags: needinfo?(pcheng)
(In reply to pcheng from comment #29)
> (In reply to Joe Cheng [:jcheng] from comment #28)
> > pcheng, now that bug 997051 has landed, can you please retest? thanks
> 
> This is still reproducible on latest pvt build.
> 
> Even we filter out large pics, we can still see this problem if we repeat
> the steps for more times. So it seems to me that we didn't free memory after
> finish changing wallpaper. 
> 
> Please correct me if I'm wrong and let me know if you need more information.
> 
> Test build
> -----------------------------------------------------------------
> Gaia      3f1d8332d127f1d6bc0fdbb08146ce1deb0efbc0
> Gecko    
> https://hg.mozilla.org/releases/mozilla-b2g28_v1_3t/rev/5da76152c2bd
> BuildID   20140421164001
> Version   28.1
> ro.build.version.incremental=eng.cltbld.20140421.201353
> ro.build.date=Mon Apr 21 20:14:01 EDT 2014

The steps I follow is comment 0
Priority: -- → P3
Whiteboard: OOM [c=memory p= s= u=] [MemShrink:P3][sprd296553] [partner-blocker] → [c=memory p= s= u=tarako] [MemShrink:P3] OOM [sprd296553] [partner-blocker]
triage: since it's getting harder to reproduce this with the 2MP limit, let's not block the release with this
blocking-b2g: 1.3T? → backlog
I was unable to reproduce this in the newest Tarako build


1.3t Environmental Variables:
Device: Tarako 1.3t
BuildID: 20140502014001
Gaia: a8e0ff550de08e58e4bf75af3cecf175b9b71e70
Gecko: 71790bf476cb
Version: 28.1
Firmware Version: sp6821
Flags: needinfo?(nhirata.bugzilla)
Definitely not seeing the issue here anymore.   WFM
Status: NEW → RESOLVED
Closed: 6 years ago
Flags: needinfo?(nhirata.bugzilla)
Resolution: --- → WORKSFORME
Peipei, fyi.  This was closed in case you want to retry.
Flags: needinfo?(pcheng)
Whiteboard: [c=memory p= s= u=tarako] [MemShrink:P3] OOM [sprd296553] [partner-blocker] → [c=memory p= s=2014.05.09.t u=tarako] [MemShrink:P3] OOM [sprd296553] [partner-blocker]
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #34)
> Peipei, fyi.  This was closed in case you want to retry.

I can still reproduce this issue by changing wallpaper for 5 or 6 times (previously was 2 or 3 times). Setting will be killed by OOM, and then a while screen appears. 
This white screen is the background color of Setting iframe. And window_manager didn't removeFrame after invoke closeWindow. This should be similar to bug 991577(SMS) which was duplicated to Bug 935750 - (suspending-app) [Window Management] Keep crashed app slept and revive it once being opened again.
Status: RESOLVED → REOPENED
Flags: needinfo?(pcheng)
Resolution: WORKSFORME → ---
Whiteboard: [c=memory p= s=2014.05.09.t u=tarako] [MemShrink:P3] OOM [sprd296553] [partner-blocker] → [c=memory p= s= u=tarako] [MemShrink:P3] OOM [sprd296553] [partner-blocker]
Whiteboard: [c=memory p= s= u=tarako] [MemShrink:P3] OOM [sprd296553] [partner-blocker] → [c=memory p= s= u=tarako] [MemShrink:P3] OOM [sprd296553]
Using Flame device, Platform version: 34.0a1
Build identifier: 20140901160203
OS version 2.1, I can reproduce the issue, there is a white screen displayed in Settings-> Display -> Wallpaper and cannot be changed at all.Tapping on it does not have any effect. Also from homescreen, long tap and choose to change wallpaper is not possible.
Please file a separate bug as it's likely unrelated. Thanks!
blocking-b2g: backlog → ---
Closing out old Firefox OS specific memshrink bugs.
Status: REOPENED → RESOLVED
Closed: 6 years ago2 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.