Closed
Bug 989594
Opened 11 years ago
Closed 11 years ago
[Tarako] Incoming call have performance issue(20s delay) when video/camera apps foreground
Categories
(Firefox OS Graveyard :: Performance, defect, P1)
Tracking
(blocking-b2g:1.3T+)
People
(Reporter: james.zhang, Assigned: kk1fff)
References
Details
(Keywords: perf, Whiteboard: [c=memory p= s= u=tarako] eta:4/11)
Attachments
(1 file)
2.87 KB,
patch
|
Details | Diff | Splinter Review |
Incoming call/message/alarm have performance issue when video/music/camera apps foreground
Fabrice's group apps patch can't handle these case.
There are a lot of similar performance issue in spreadtrum bugzilla now.
http://bugzilla.spreadtrum.com/bugzilla/show_bug.cgi?id=294967
http://bugzilla.spreadtrum.com/bugzilla/show_bug.cgi?id=294227
http://bugzilla.spreadtrum.com/bugzilla/show_bug.cgi?id=294625
Reporter | ||
Updated•11 years ago
|
blocking-b2g: --- → 1.3T?
Flags: needinfo?(tlee)
Flags: needinfo?(styang)
Flags: needinfo?(gal)
Flags: needinfo?(fabrice)
Reporter | ||
Comment 1•11 years ago
|
||
http://bugzilla.spreadtrum.com/bugzilla/show_bug.cgi?id=294760
http://bugzilla.spreadtrum.com/bugzilla/show_bug.cgi?id=294199
User can't answer incoming call when multimedia is working.
Severity: major → critical
Reporter | ||
Comment 2•11 years ago
|
||
Add Sam here for discussion.
Reporter | ||
Comment 3•11 years ago
|
||
And multimeida apps may be killed by LMK when incoming call, we also have a lot of similar issue in our bugzilla.
Maybe we can use some special actions to fix this problem.
for example in android of SPRD
http://bugzilla.spreadtrum.com/bugzilla/show_bug.cgi?id=121680
http://bugzilla.spreadtrum.com/bugzilla/show_bug.cgi?id=97008
case RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED:
if (RILJ_LOGD) unsljLog(response);
-
+ // for bug 97008 start
+ if (mThread == null && Build.IS_LOWMEM_VERSION) {
+ mThread = new Thread(new Runnable() {
+ public void run() {
+ try {
+ if (RILJ_LOGD)riljLog("ActivityManagerNative.moveTaskToBack() start ");
+ ActivityManagerNative.getDefault().killStopFrontApp(ActivityManager.KILL_STOP_FRONT_APP);
+ if (RILJ_LOGD)riljLog("ActivityManagerNative.moveTaskToBack() end ");
+ Thread.sleep(3000);
+ } catch (RemoteException e) {
+ e.printStackTrace();
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ mThread = null;
+ }
+ });
+ mThread.start();
+ }
+ // for bug 97008 start
Comment 5•11 years ago
|
||
So the idea here is to kill the foreground app when there is an incoming call?
Flags: needinfo?(gal)
Comment 6•11 years ago
|
||
Supposedly, the video/music playing will be resumed after call ends. Where/How you keep the previous status in video/music playing?
Flags: needinfo?(styang) → needinfo?(james.zhang)
Comment 7•11 years ago
|
||
We have no session restore for now, at that looks like a rather large undertaking giving the deadlines we have.
One thing we could try is to make the dialer share the process of another certified app is one is already running. I'll write a wip to check if that helps us there.
Flags: needinfo?(fabrice)
Reporter | ||
Comment 8•11 years ago
|
||
(In reply to Steven Yang [:styang] from comment #6)
> Supposedly, the video/music playing will be resumed after call ends.
> Where/How you keep the previous status in video/music playing?
LMK notify the apps will be killed, and the apps store the status in storage or system apps and restore the status when restart.
Flags: needinfo?(james.zhang)
Reporter | ||
Comment 9•11 years ago
|
||
(In reply to Fabrice Desré [:fabrice] from comment #7)
> We have no session restore for now, at that looks like a rather large
> undertaking giving the deadlines we have.
>
> One thing we could try is to make the dialer share the process of another
> certified app is one is already running. I'll write a wip to check if that
> helps us there.
I think we should implement session restore on gaia side.
We have some bug without incoming call,
SMS->lockscreen->SMS killed by LMK.
SMS->homescreen->SMS killed by LMK.
see
http://bugzilla.spreadtrum.com/bugzilla/show_bug.cgi?id=294824
You can translate some Chinese description bug by google translate, and sorry for that, not all of our QA can't use English description.
Comment 10•11 years ago
|
||
Implementing generic session restore requires fairly deep architectural changes and will take many months. It requires changes to the gecko and gaia side across all the apps.
Our only option here is to accept some apps getting killed when going to the homescreen or lockscreen or to a call.
We can try to reduce the number of ways this state can be hit by ensuring that we are smart about memory. We are currently not compacting the background app to improve app switch times, so SMS is less likely to survive and more likely to get outright killed. We should revisit that.
Comment 11•11 years ago
|
||
wip patch: that let apps that have 'critical' moztype (currently the clock and the comms app) reuse the process of another certified app if there's one available.
I haven't tested much apart the clock yet. I'm also a bit worried about sharing processes with too many apps with that + the activities sharing. Let's test more and see if that improves the situation overall.
Comment 12•11 years ago
|
||
Now music player and video apps are very simple. I don't think it is a hard work to store the status and restart after the call application/Message ended.
We can do it at first before we have the better solution for the performance.
Comment 13•11 years ago
|
||
The problem is regression risk. We have to create a framework to notify apps to store the state, avoid them being killed to fast, change the apps, etc. All of this will take a few weeks to implement, and a few more weeks to stabilize. This will easily slip our schedule by a few months total. We should very carefully decide whether this feature is worth that, or whether we want to ship the first version now, and iteratively make improvements to the software in future releases.
Comment 14•11 years ago
|
||
At first, we should know the performance is okay or not if we kill the front app when incoming call.
Comment 15•11 years ago
|
||
I think it is very clear that to kill apps to release memory could save the performance of incoming call, at least for incoming call.
For session restoring, we have start a discussion at dev-b2g mailing list.
- see https://groups.google.com/d/msg/mozilla.dev.b2g/7imJkAI6IGs/MfnStbwVMx8J
Just like what Andreas said, I would rather like to have a frame and to make this as a long solution, not just a workaround for tarako only, although still have some short term solution that is being worked on. For example, bug 987022.
Flags: needinfo?(tlee)
Comment 16•11 years ago
|
||
i'd like to have QA to confirm how bad the performance issue is.
will be great to provide the number of seconds in delay
Thanks
Keywords: qawanted
Reporter | ||
Updated•11 years ago
|
Summary: [Tarako] Incoming call/message/alarm have performance issue when video/music/camera apps foreground → [Tarako] Incoming call have performance issue(20s delay) when video/camera apps foreground
I got roughly about ~16 seconds testing incoming call ui coming up w/ camera app running in the foreground
Gaia 02b97c89dec7a10a955c85b921b2a66181eebb0e
Gecko f8bca24057937f5b09d73512ba1e771011ab4203
BuildID 20140331124355
Version 28.1
ro.build.version.incremental=75
ro.build.date=Mon Mar 31 12:45:23 CST 2014
Tarako
Keywords: qawanted
Comment 18•11 years ago
|
||
For video and camera, both of them could be killed according the definitions of requirement of the Tarako. This very possibly be the problem of how fast we could kill the app while the memory is going not enough. We would put the video and camera app into the check list to make sure our configuration could handle these cases. (see bug 974308)
For music app, we already have the bug to handle it, bug 973596.
Comment 19•11 years ago
|
||
triage: incoming call must be able to be picked up by user. 1.3T+. To Patrick for now. thanks
Assignee: nobody → pwang
blocking-b2g: 1.3T? → 1.3T+
Updated•11 years ago
|
Severity: critical → blocker
Priority: -- → P1
Whiteboard: [c=memory p= s= u=]
Updated•11 years ago
|
Assignee | ||
Comment 21•11 years ago
|
||
We are going to kill apps when launching comms app on bug 987022, I believe that would also help this case. I will test the patch and update the result.
Depends on: 987022
Updated•11 years ago
|
Whiteboard: [c=memory p= s= u=tarako] → [c=memory p= s= u=tarako] [MP_Blocker]
Assignee | ||
Comment 22•11 years ago
|
||
(In reply to Patrick Wang (Chih-Kai Wang) (:kk1fff) from comment #21)
> We are going to kill apps when launching comms app on bug 987022, I believe
> that would also help this case. I will test the patch and update the result.
I have tried that patch under the condition decribed here. By killing video/camera, the launch of comms becomes faster.
Updated•11 years ago
|
Whiteboard: [c=memory p= s= u=tarako] [MP_Blocker] → [c=memory p= s= u=tarako] [priority]
Updated•11 years ago
|
Whiteboard: [c=memory p= s= u=tarako] [priority] → [c=memory p= s= u=tarako] [priority] eta:4/11
Updated•11 years ago
|
Whiteboard: [c=memory p= s= u=tarako] [priority] eta:4/11 → [c=memory p= s= u=tarako] eta:4/11
Comment 23•11 years ago
|
||
hi Patrick, should we dup this bug with bug 990003? Thanks
Flags: needinfo?(pwang)
Assignee | ||
Comment 24•11 years ago
|
||
I am trying if we can also fix on platform, probably by modifying priority manager or rearranging app startup routine.
Flags: needinfo?(pwang)
Comment 25•11 years ago
|
||
QAWANTED, to confirm if this bug is still valid after bug 990003 lands
Keywords: qawanted
Comment 26•11 years ago
|
||
Mike, pls confirm this with latest build. After that, pls remove qawanted. Thank you.
Flags: needinfo?(mlien)
Comment 27•11 years ago
|
||
verify with below build and it's fine
Gaia c62bff0bfb8b069c962dfae2640e931cc9ad1bdf
Gecko https://hg.mozilla.org/releases/mozilla-b2g28_v1_3t/rev/7e764399b4fc
BuildID 20140415164003
Version 28.1
Flags: needinfo?(mlien)
Comment 28•11 years ago
|
||
Tried on the latest build.
Incoming call screen shows up about 3 seconds after the first ringtone while video/music being played.
Build Info:
-----------------------------------------------------
Gaia c62bff0bfb8b069c962dfae2640e931cc9ad1bdf
Gecko https://hg.mozilla.org/releases/mozilla-b2g28_v1_3t/rev/7e764399b4fc
BuildID 20140415164003
Version 28.1
ro.build.version.incremental=eng.cltbld.20140415.201139
ro.build.date=Tue Apr 15 20:11:46 EDT 2014
Comment 29•11 years ago
|
||
dup to 990003
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → DUPLICATE
Updated•10 years ago
|
Target Milestone: --- → 1.4 S6 (25apr)
You need to log in
before you can comment on or make changes to this bug.
Description
•