Closed Bug 864734 Opened 7 years ago Closed 2 years ago

crash in mozilla::ReentrantMonitorAutoEnter::~ReentrantMonitorAutoEnter @ libstagefright.so@0xf... on Samsung devices running Gingerbread

Categories

(Core :: Audio/Video: Playback, defect)

21 Branch
ARM
Android
defect
Not set

Tracking

()

RESOLVED INCOMPLETE
Tracking Status
firefox20 --- unaffected
firefox21 + fixed
firefox22 + fixed

People

(Reporter: scoobidiver, Unassigned)

References

Details

(Keywords: crash, regression, Whiteboard: [native-crash][leave open])

Crash Data

Attachments

(1 file, 2 obsolete files)

With combined signatures, it's #9 top crasher in 21.0b3 and #15 in 22.0a2.

The affected devices for the last day are (min 2 crashes):
* libstagefright.so@0xf9148 	13
Samsung SCH-I405 	13
* libstagefright.so@0xf9418 	11
Samsung SCH-S720C 	11
* libstagefright.so@0xf93e0 	10
Samsung SCH-I510 	10
* libstagefright.so@0xfae68 	4
Samsung SGH-S959G 	4
* libstagefright.so@0xfae80 	3
Samsung SCH-R760 	3
libstagefright.so@0xf49f0 	2
Samsung GT-I9000 	2
* libstagefright.so@0xf4a00 	2
Samsung GT-I9000 	2

Signature 	libstagefright.so@0xf9148 More Reports Search
UUID	0fa370b7-79e8-45ea-8aeb-c1d722130423
Date Processed	2013-04-23 02:23:55
Uptime	67
Install Age	2.1 minutes since version was first installed.
Install Time	2013-04-23 02:21:30
Product	FennecAndroid
Version	21.0
Build ID	20130416195807
Release Channel	beta
OS	Android
OS Version	0.0.0 Linux 2.6.35.7-FF1 #2 PREEMPT Wed Jul 18 21:01:10 KST 2012 armv7l verizon/SCH-I405/SCH-I405:2.3.6/GINGERBREAD/FF1:user/release-keys
Build Architecture	arm
Build Architecture Info	
Crash Reason	SIGSEGV
Crash Address	0x0
App Notes 	
AdapterDescription: 'Imagination Technologies -- PowerVR SGX 540 -- OpenGL ES 2.0 -- Model: SCH-I405, Product: SCH-I405, Manufacturer: samsung, Hardware: smdkc110'
EGL? EGL+ GL Context? GL Context+ GL Layers? GL Layers+ Stagefright? Stagefright+ 
samsung SCH-I405
verizon/SCH-I405/SCH-I405:2.3.6/GINGERBREAD/FF1:user/release-keys
Processor Notes 	sp-processor09.phx1.mozilla.com_22578:2012; non-integer value of "SecondsSinceLastCrash"; exploitability tool failed: 127
EMCheckCompatibility	True
Adapter Vendor ID	Imagination Technologies
Adapter Device ID	PowerVR SGX 540
Device	samsung SCH-I405
Android API Version	10 (REL)
Android CPU ABI	armeabi-v7a

Frame 	Module 	Signature 	Source
0 	libstagefright.so 	libstagefright.so@0xf9148 	
1 	libnspr4.so 	PR_ExitMonitor 	nsprpub/pr/src/pthreads/ptsynch.c:557
2 	libxul.so 	mozilla::ReentrantMonitorAutoEnter::~ReentrantMonitorAutoEnter 	obj-firefox/dist/include/mozilla/ReentrantMonitor.h:80
3 	libxul.so 	mozilla::MediaCacheStream::Seek 	content/media/MediaCache.cpp:2058
4 	libstagefright.so 	libstagefright.so@0x169a1a 	
5 	libstagefright.so 	libstagefright.so@0x169a1a 	
6 	libstagefright.so 	libstagefright.so@0xf54ad 	
7 	libstagefright.so 	libstagefright.so@0x169a1a 	
8 	libomxplugingb.so 	android::MediaStreamSource::initCheck const 	media/omx-plugin/OmxPlugin.cpp:84
9 	libstagefright.so 	libstagefright.so@0x169a1a 	
10 	libstagefright.so 	libstagefright.so@0x54bfb 	
11 	libstagefright.so 	libstagefright.so@0x1681be 	
12 	libstagefright.so 	libstagefright.so@0xf5473 	
13 	libstagefright.so 	libstagefright.so@0x50095 	
14 	libstagefright.so 	libstagefright.so@0x170236 	
15 	libutils.so 	_ZN7android6LooperC2Eb 	
16 	libstagefright.so 	libstagefright.so@0x169a1a 	
17 	libstagefright.so 	libstagefright.so@0x5c0bb 	
18 	libxul.so 	mozilla::MediaCacheStream::SetReadMode 	content/media/MediaCache.cpp:2013
19 	libomxplugingb.so 	OmxPlugin::OmxDecoder::Init 	media/omx-plugin/OmxPlugin.cpp:370

More reports at:
https://crash-stats.mozilla.com/query/query?product=FennecAndroid&query_search=signature&query_type=contains&query=libstagefright.so%400xf&do_query=1
Passing this onto chris, to help with the needed blocklist here as it looks like we had whitelisted all the Samsung Gingerbread devices for Stagefright decoding in 823253.

Chris, can we please get the blocklist landed here at the earliest to help with this top-crasher ?
Assignee: nobody → chris.double
Crash Signature: ] [@ libstagefright.so@0xf46f0 ] [@ libstagefright.so@0xf4780 ] [@ libstagefright.so@0xf4a00 ] [@ libstagefright.so@0xf91b0 ] [@ libstagefright.so@0xfb398 ] → ] [@ libstagefright.so@0xf46f0 ] [@ libstagefright.so@0xf4780 ] [@ libstagefright.so@0xf4a00 ] [@ libstagefright.so@0xf91b0 ] [@ libstagefright.so@0xfb398 ] [@ libstagefright.so@0xfb228 ] [@ libstagefright.so@0xfbac0 ] [@ libstagefright.so@0xf3c6…
https://crash-stats.mozilla.com/query/query?product=FennecAndroid&version=ALL%3AALL&range_value=1&range_unit=weeks&date=04%2F26%2F2013+17%3A16%3A02&query_search=signature&query_type=contains&query=mozilla%3A%3AReentrantMonitorAutoEnter&reason=&build_id=&process_type=any&hang_type=any&do_query=1

Not sure if this is a top crash anymore.  Leaving as is though.
Crash Signature: libstagefright.so@0xf3c60 ] [@ libstagefright.so@0xf4390 ] → libstagefright.so@0xf3c60 ] [@ libstagefright.so@0xf4390 ] [@ PR_ExitMonitor | mozilla::ReentrantMonitorAutoEnter::~ReentrantMonitorAutoEnter ]
The PR_ExitMonitor | mozilla::ReentrantMonitorAutoEnter::~ReentrantMonitorAutoEnter signature is on JB and without any Stagefright frames so unrelated to these crashes.

(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #2)
> Not sure if this is a top crash anymore.  Leaving as is though.
There are currently 251 crashes in 21.0b3 and 24 in 21.0b4 so it's #8 top crasher in 21.0b3 and #4 in 21.0b4.
Crash Signature: libstagefright.so@0xf3c60 ] [@ libstagefright.so@0xf4390 ] [@ PR_ExitMonitor | mozilla::ReentrantMonitorAutoEnter::~ReentrantMonitorAutoEnter ] → libstagefright.so@0xf3c60 ] [@ libstagefright.so@0xf4390 ]
Crash Signature: libstagefright.so@0xf3c60 ] [@ libstagefright.so@0xf4390 ] → libstagefright.so@0xf3c60 ] [@ libstagefright.so@0xf4390 ] [@ libstagefright.so@0xfdfc8 ] [@ @0x0 | libstagefright.so@0x186e67 ]
Crash Signature: libstagefright.so@0xf3c60 ] [@ libstagefright.so@0xf4390 ] [@ libstagefright.so@0xfdfc8 ] [@ @0x0 | libstagefright.so@0x186e67 ] → libstagefright.so@0xf3c60 ] [@ libstagefright.so@0xf4390 ] [@ libstagefright.so@0xfdfc8 ] [@ @0x0 | libstagefright.so@0x186e67 ] [@ __libc_android_abort | __android_log_assert | _ZN7android10AVCDecoder9bindFrameEiPPh ]
Attached patch Blocklist devices (obsolete) — Splinter Review
I think this gets all the devices in the crash reports. Scoobidiver, can you check if any are missing? I note the bug title says Gingerbread but the devices actually range from GB->HC->ICS->JB 4.1->JB 4.2.
Attachment #742916 - Flags: review?(bjacob)
Attachment #742916 - Flags: feedback?(scoobidiver)
(In reply to Chris Double (:doublec) from comment #4)
> Scoobidiver, can you check if any are missing?
There are too many.
On Gingerbread, affected HW is only (manual checking):
smdkc110, smdkc210, herring, shw-m110s, shw-m180s, n1, latona, aalto, atlas, qcom
The qcom blocklist will help fix bug 847837 not fully fixed by the current blocklist based on models.
On other Android versions, no blocklist is required for this bug. See below.

> I note the bug title says Gingerbread but the devices actually range from
> GB->HC->ICS->JB 4.1->JB 4.2.
In 20.0.1 and below, crashes with signatures starting with libstagefright.so@0xf are bug 802620 which is a low volume crash, #109 crasher in 20.0.1, so not requiring a blocklist.
In 21.0 Beta and above (see https://crash-stats.mozilla.com/query/query?product=FennecAndroid&version=FennecAndroid%3A23.0a1&version=FennecAndroid%3A22.0a2&version=FennecAndroid%3A21.0b4&version=FennecAndroid%3A21.0b3&version=FennecAndroid%3A21.0b2&version=FennecAndroid%3A21.0b1&range_value=4&range_unit=weeks&query_search=signature&query_type=contains&query=libstagefright.so%400xf&do_query=1), only Gingerbread is affected except for libstagefright.so@0xf1219 and other low volume crashes which have a different stack trace and don't belong to this bug.
Crash Signature: libstagefright.so@0xf3c60 ] [@ libstagefright.so@0xf4390 ] [@ libstagefright.so@0xfdfc8 ] [@ @0x0 | libstagefright.so@0x186e67 ] [@ __libc_android_abort | __android_log_assert | _ZN7android10AVCDecoder9bindFrameEiPPh ] → libstagefright.so@0xf3c60 ] [@ libstagefright.so@0xf4390 ] [@ libstagefright.so@0xfdfc8 ] [@ libstagefright.so@0xfdffc ] [@ libstagefright.so@0xf40b0 ] [@ libstagefright.so@0xfb230 ] [@ libstagefright.so@0xf0ce7 ] [@ libstagefright.so@0xf43e0 ] […
Attachment #742916 - Flags: feedback?(scoobidiver) → feedback-
Scoobidiver, are you going to expand on the feedback-?
Flags: needinfo?(scoobidiver)
Oh you did, missed that. Ok I'm confused. Someone please provide an exact list of devices and android versions required to fix this bug. I won't be doing anything until that is provided.
As per comment 7.
Flags: needinfo?
(In reply to Chris Double (:doublec) from comment #7)
> Someone please provide an exact list of devices and android versions required to fix
> this bug.
Per comment 5:
Gingerbread: smdkc110, smdkc210, herring, shw-m110s, shw-m180s, n1, latona, aalto, atlas, qcom
Honeycomb: nothing
ICS: nothing
JB: nothing
Flags: needinfo?(scoobidiver)
Flags: needinfo?
Attachment #742916 - Attachment is obsolete: true
Attachment #742916 - Flags: review?(bjacob)
Attached patch Blocklist scoobi devices (obsolete) — Splinter Review
Attachment #743289 - Flags: review?(bjacob)
Comment on attachment 743289 [details] [diff] [review]
Blocklist scoobi devices

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

::: widget/android/GfxInfo.cpp
@@ +406,5 @@
>          {
>            isWhitelisted = false;
>          }
>  
> +        if (cHardware.Equals("smdkc110", nsCaseInsensitiveCStringComparator()) ||

You could merge that into the previous if(). Up to you. If you don't, maybe add a quick comment as to why.
Attachment #743289 - Flags: review?(bjacob) → review+
Attached patch Block devicesSplinter Review
Address review comment, carry forward r+
Attachment #743289 - Attachment is obsolete: true
Attachment #743302 - Flags: review+
Comment on attachment 743302 [details] [diff] [review]
Block devices

[Approval Request Comment]
Bug caused by (feature/regressing bug #): Enabling of gingerbread devices
User impact if declined: Some gingerbread devices will crash when playing video
Testing completed (on m-c, etc.): Unable to test due to no hardware
Risk to taking this patch (and alternatives if risky): Some devices that do not crash may not play video
String or IDL/UUID changes made by this patch: None
Attachment #743302 - Flags: approval-mozilla-aurora?
Comment on attachment 743302 [details] [diff] [review]
Block devices

[Approval Request Comment]
Bug caused by (feature/regressing bug #): Enabling of gingerbread devices
User impact if declined: Some gingerbread devices will crash when playing video
Testing completed (on m-c, etc.): Unable to test due to no hardware
Risk to taking this patch (and alternatives if risky): Some devices that do not crash may not play video
String or IDL/UUID changes made by this patch: None
Attachment #743302 - Flags: approval-mozilla-beta?
Chris, I think this needs to land on m-c too , unless you are planning on landing the fwd fix there instead of blocklist ?
Spoke on irc with Chris & he will be landing this on m-c soon . I am already approving this so that it can land on branches in parallel given the timeline for our Fx21 beta5, going to build tomorrow.

Hence the pre-approval on branches here.
Comment on attachment 743302 [details] [diff] [review]
Block devices

Please make sure to land before Tuesday noon PT to get this into our second last beta which is when we will be going to build for our next beta.
Attachment #743302 - Flags: approval-mozilla-beta?
Attachment #743302 - Flags: approval-mozilla-beta+
Attachment #743302 - Flags: approval-mozilla-aurora?
Attachment #743302 - Flags: approval-mozilla-aurora+
https://hg.mozilla.org/integration/mozilla-inbound/rev/9018a6a45065
Whiteboard: [native-crash] → [native-crash][leave open]
Blocks: 847837
Blocks: 859032
There are eight crashes in 21.0b6.
Keywords: topcrash
Assignee: cajbir.bugzilla → nobody
Component: Audio/Video → Audio/Video: Playback
Gingerbread is no longer supported.
Severity: critical → normal
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.