Closed Bug 952783 Opened 7 years ago Closed 7 years ago

Crash in Telephony while running MO sms test script

Categories

(Firefox OS Graveyard :: RIL, defect)

ARM
Gonk (Firefox OS)
defect
Not set
critical

Tracking

(blocking-b2g:1.3+, firefox27 wontfix, firefox28 fixed, firefox29 fixed, b2g-v1.3 fixed, b2g-v1.3T fixed, b2g-v1.4 fixed)

RESOLVED FIXED
1.3 C2/1.4 S2(17jan)
blocking-b2g 1.3+
Tracking Status
firefox27 --- wontfix
firefox28 --- fixed
firefox29 --- fixed
b2g-v1.3 --- fixed
b2g-v1.3T --- fixed
b2g-v1.4 --- fixed

People

(Reporter: ggrisco, Assigned: aknow)

Details

(Keywords: crash, regression, Whiteboard: [caf-crash 69][caf priority: p1][CR 592643][b2g-crash])

Crash Data

Attachments

(3 files, 1 obsolete file)

Test Steps:
1. Enable auto answer. Run MO sms test case.
2. Receive MT calls randomly. After few hours of run, Device generated mini dumps.

[@ nsAString_internal::Assign(nsAString_internal const&, mozilla::fallible_t const&) | nsAString_internal::Assign(nsAString_internal const&) | mozilla::dom::Telephony::NotifyCdmaCallWaiting(unsigned int, nsAString_internal const&) | mozilla::dom::telephony::TelephonyIPCProvider::NotifyCdmaCallWaiting(unsigned int, nsAString_internal const&) ]
Attached file EXTRA file attachment
Crash Signature: [@ nsAString_internal::Assign(nsAString_internal const&, mozilla::fallible_t const&) | nsAString_internal::Assign(nsAString_internal const&) | mozilla::dom::Telephony::NotifyCdmaCallWaiting(unsigned int, nsAString_internal const&) | mozilla::dom::telephon…
blocking-b2g: 1.3? → 1.3+
Hi,

Are you running the test on gsm or cdma networks?
Keywords: crash, regression
Whiteboard: [CR 592643] → [CR 592643][b2g-crash]
Greg,

Can you please share some network details?

Also, how many was few hours of running? Please help with the same.
Flags: needinfo?(ggrisco)
Looks like this was found while testing on cdma network.  We haven't seen this crash in past couple of weeks now.  Unsure how many hours it took to see crash since tests were run over weekend, but it was only seen 3 times on same build back on 12/17.
Flags: needinfo?(ggrisco)
(In reply to Greg Grisco from comment #5)
> Looks like this was found while testing on cdma network.  We haven't seen
> this crash in past couple of weeks now.  Unsure how many hours it took to
> see crash since tests were run over weekend, but it was only seen 3 times on
> same build back on 12/17.
Was this bug found when you did the auto tests? It would be great if you can share this auto test tool for us. We would like to reproduce this bug.
Greg,

Is this something you can provide?
Flags: needinfo?(ggrisco)
Last time we saw this crash is a build from Dec 17, closing this issue until it reproduces in 2014.
Status: NEW → RESOLVED
blocking-b2g: 1.3+ → ---
Closed: 7 years ago
Flags: needinfo?(ggrisco)
Resolution: --- → WORKSFORME
(darn, reproduced 4 times on a Jan 5th build)
Status: RESOLVED → REOPENED
blocking-b2g: --- → 1.3+
Resolution: WORKSFORME → ---
(In reply to Ken Chang[:ken] from comment #6)
> Was this bug found when you did the auto tests? It would be great if you can
> share this auto test tool for us. We would like to reproduce this bug.

Hi Ken, yes it was found while running auto test scripts.  Unfortunately, I don't even have access to the test scripts and we don't share them.  You could almost think of it like monkey testing, anyway, since sometimes multiple scripts are run in parallel.
Ken

How do you propose we move ahead with this blocker?
Flags: needinfo?(kchang)
(In reply to Preeti Raghunath(:Preeti) from comment #11)
> Ken
> 
> How do you propose we move ahead with this blocker?
I wounder if QA can help to reproduce. Base on commet 5, it seems not easy to reproduce. That's why I request the auto test script.

Aknow, can you please review the code to see if there is any bug to cause this issue?
Flags: needinfo?(kchang) → needinfo?(szchen)
Just update the current progress, I will investigate it later.
After discussing w/ cervantes, we found that the problem may be caused by an empty |callToNotify|
That means |mActiveCall| is null at that time.


NS_IMETHODIMP
Telephony::NotifyCdmaCallWaiting(uint32_t aServiceId, const nsAString& aNumber)
{
  MOZ_ASSERT(mActiveCall &&
             mActiveCall->ServiceId() == aServiceId &&
             mActiveCall->CallState() == nsITelephonyProvider::CALL_STATE_CONNECTED);

  nsRefPtr<TelephonyCall> callToNotify = mActiveCall;
  callToNotify->UpdateSecondNumber(aNumber);
  DispatchCallEvent(NS_LITERAL_STRING("callschanged"), callToNotify);
  return NS_OK;
}
Flags: needinfo?(szchen)
Hi Greg,

I don't understand what kind of test will be run.

>> Test Steps:
>> 1. Enable auto answer. Run MO sms test case.
>> 2. Receive MT calls randomly. After few hours of run, Device generated mini dumps.

So, What will happened on the phone when running the test script?
1. receive MT call => 2. hangup by another party? => later, repeat 1 and 2 again and again ?

Will phone receive the 2nd MT call when the 1st one is ongoing?
Flags: needinfo?(ggrisco)
(In reply to Szu-Yu Chen [:aknow] from comment #14)
> Hi Greg,
> 
> I don't understand what kind of test will be run.
> 
> >> Test Steps:
> >> 1. Enable auto answer. Run MO sms test case.
> >> 2. Receive MT calls randomly. After few hours of run, Device generated mini dumps.
> 
> So, What will happened on the phone when running the test script?
> 1. receive MT call => 2. hangup by another party? => later, repeat 1 and 2
> again and again ?
> 
> Will phone receive the 2nd MT call when the 1st one is ongoing?

Hi Szu-Yu, I will see if I can find more details from test team to share.  I might not get a response til Monday though, thanks.
Szu,

Please see if we can proceed without the info till Greg gets back to us.
Flags: needinfo?(szchen)
Hi Greg,

Would you try the following steps and see whether they could reproduce the same issue?
1. Make a call
2. Hold the call from phone side
3. Receive an MT call

Is it crash? Will the above case occur in the test script?
Flags: needinfo?(szchen)
Assignee: nobody → szchen
Attachment #8359705 - Flags: review?(htsai)
Comment on attachment 8359705 [details] [diff] [review]
Use first call instead of active call

Review of attachment 8359705 [details] [diff] [review]:
-----------------------------------------------------------------

r=me with comment addressed. Thanks!

::: dom/telephony/Telephony.cpp
@@ +696,5 @@
>  
>  NS_IMETHODIMP
>  Telephony::NotifyCdmaCallWaiting(uint32_t aServiceId, const nsAString& aNumber)
>  {
> +  MOZ_ASSERT(mCalls.Length() > 0);

Let's have a more strict condition: MOZ_ASSERT(mCalls.Length() == 1)
Attachment #8359705 - Flags: review?(htsai) → review+
https://hg.mozilla.org/mozilla-central/rev/12ed901636ef
Status: REOPENED → RESOLVED
Closed: 7 years ago7 years ago
Resolution: --- → FIXED
Target Milestone: --- → 1.3 C2/1.4 S2(17jan)
Flags: needinfo?(ggrisco)
Flags: in-moztrap-
Whiteboard: [CR 592643][b2g-crash] → [caf priority: p1][CR 592643][b2g-crash]
Observed on: 

Device: 
Gonk Version: AU_LINUX_GECKO_B2G_JB_3.2.01.03.00.112.190
Moz BuildID: 20140105004001
B2G Version: 1.3
Gecko Version: 28.0a2
Gaia:  http://git.mozilla.org/?p=releases/gaia.git;a=commit;h=f55764b3cfb5937e8ca58835342a67059cd3ad8f
Gecko: http://git.mozilla.org/?p=releases/gecko.git;a=commit;h=90e4bf35696cde2bae6f09d5e01caa88760c4e5f
Whiteboard: [caf priority: p1][CR 592643][b2g-crash] → [caf-crash 69][caf priority: p1][CR 592643][b2g-crash]
You need to log in before you can comment on or make changes to this bug.