Closed Bug 1370915 Opened 7 years ago Closed 6 years ago

Crash in java.lang.UnsatisfiedLinkError: at java.lang.Runtime.loadLibrary(Runtime.java)

Categories

(Firefox for Android Graveyard :: General, defect, P1)

defect

Tracking

(fennec+, firefox56 wontfix, firefox57 fixed, firefox58 fixed, firefox59 fixed)

RESOLVED FIXED
Firefox 59
Tracking Status
fennec + ---
firefox56 --- wontfix
firefox57 --- fixed
firefox58 --- fixed
firefox59 --- fixed

People

(Reporter: snorp, Assigned: droeh)

References

Details

(Keywords: crash, regression)

Crash Data

Attachments

(1 file)

This bug was filed from the Socorro interface and is 
report bp-8fa04c41-a72b-4fa5-bf82-364550170603.
=============================================================

This seems to have started when we moved Nightly into the Play Store. Very strange.
The library path in these reports seems wrong. It should consider /data/data/org.mozilla.fennec_aurora/lib, but is not?
#3 top crash in 57 Beta 9. API's 17-19 are affected. 

Comments:

* why doesn't open firefox on my Android phone. Android version 4.4.0
Hi Snorp, is there something we can do about this top crasher on Beta57? Thanks!
Flags: needinfo?(snorp)
(In reply to Marcia Knous [:marcia - use ni] from comment #2)
> #3 top crash in 57 Beta 9. API's 17-19 are affected. 
> 
> Comments:
> 
> * why doesn't open firefox on my Android phone. Android version 4.4.0

It looks as if there is a wider swath of APIs when I looked more recently. It affects from 17-23 now.
I don't see anything else obvious here. Jim, can you take a look?
Flags: needinfo?(snorp) → needinfo?(nchen)
Most of these are x86 builds running on ARM devices, and a couple cases are ARM builds running on (apparently) ARM64-only devices. Normally in this situation, we would display a message telling the user to reinstall. But bug 1345267 introduced a regression in that behavior, because now we try to load mozglue first, which leads to the crash, before we have a chance to show the message.
Blocks: 1345267
tracking-fennec: --- → ?
Flags: needinfo?(nchen)
Keywords: regression
Hey Dylan can you take a look?
Flags: needinfo?(droeh)
Assignee: nobody → droeh
tracking-fennec: ? → +
Priority: -- → P1
This patch rearranges things so that we always check HardwareUtils.isSupportedSystem() before attempting to load mozglue.
Flags: needinfo?(droeh)
Attachment #8929062 - Flags: review?(nchen)
Comment on attachment 8929062 [details] [diff] [review]
Only load mozglue on supported hardware

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

::: mobile/android/base/java/org/mozilla/gecko/BrowserApp.java
@@ +624,5 @@
> +
> +        boolean supported = HardwareUtils.isSupportedSystem();
> +        if (supported) {
> +            GeckoLoader.loadMozGlue(appContext);
> +            supported = supported && GeckoLoader.neonCompatible();

`supported = GeckoLoader.neonCompatible();`

::: mobile/android/base/java/org/mozilla/gecko/GeckoApp.java
@@ +920,5 @@
>  
> +        boolean supported = HardwareUtils.isSupportedSystem();
> +        if (supported) {
> +            GeckoLoader.loadMozGlue(getApplicationContext());
> +            supported = supported && GeckoLoader.neonCompatible();

Same here
Attachment #8929062 - Flags: review?(nchen) → review+
Pushed by droeh@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/e95bb3b5f38e
Reorganize compatibility checks in BrowserApp and GeckoApp to avoid attempting to load mozglue on unsupported hardware. r=jchen
https://hg.mozilla.org/mozilla-central/rev/e95bb3b5f38e
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 59
Comment on attachment 8929062 [details] [diff] [review]
Only load mozglue on supported hardware

Approval Request Comment
[Feature/Bug causing the regression]: 1345267
[User impact if declined]: Users who end up with Fennec built for the wrong architecture will crash rather than seeing a message telling them to reinstall.
[Is this code covered by automated tests?]: No
[Has the fix been verified in Nightly?]: Yes
[Needs manual test from QE? If yes, steps to reproduce]: No
[List of other uplifts needed for the feature/fix]: None
[Is the change risky?]: Low-risk.
[Why is the change risky/not risky?]: This just rearranges code to check the architecture before trying to load mozglue.
[String changes made/needed]: None
Attachment #8929062 - Flags: approval-mozilla-release?
Attachment #8929062 - Flags: approval-mozilla-beta?
Comment on attachment 8929062 [details] [diff] [review]
Only load mozglue on supported hardware

Fix a crash. Beta58+.
Attachment #8929062 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
We shipped 55 with this issue, the volume isn't crazy high, why should we take that in 57?
Thanks
Flags: needinfo?(droeh)
Comment on attachment 8929062 [details] [diff] [review]
Only load mozglue on supported hardware

Actually, looking at the volume and the fact that we will do a fennec dot release anyway, taking it.
Attachment #8929062 - Flags: approval-mozilla-release? → approval-mozilla-release+
Flags: needinfo?(droeh)
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.