crash in __libc_android_abort | dlfree | free | _ZdlPv

RESOLVED WONTFIX

Status

()

Firefox for Android
Web Apps
--
critical
RESOLVED WONTFIX
5 years ago
4 years ago

People

(Reporter: Ioana Chiorean, Unassigned)

Tracking

({crash})

27 Branch
All
Android
crash
Points:
---

Firefox Tracking Flags

(firefox26 affected, firefox27 affected, firefox28- affected, firefox29 unaffected, fennec-)

Details

(Whiteboard: [WebRuntime], crash signature)

(Reporter)

Description

5 years ago
This bug was filed from the Socorro interface and is 
report bp-d1c71096-ff14-4dfe-ba5a-27a9b2140114.

Device: HTC Desire HD 
Android: 2.3
Build: Firefox Beta 27.0b6

Steps:
1. Instal a new WebApp - in y CasePasjan/ Solitare

Reproducible 
- this is reproducible at installing webapps but intermittent with other crashes 

Bug 959524 - crash in libGLESv2_adreno200.so@0x7015f
Bug 785385 - Crash Report [@ __libc_android_abort | dlmalloc_trim | dlmalloc | malloc | _Znwj ] 


=============================================================
0 	libc.so 	__libc_android_abort 	
1 	libc.so 	dlfree 	
2 	libc.so 	free 	
3 	libstdc++.so 	_ZdlPv 	
4 	libEGL.so 	_ZN7android33egl_get_image_for_current_contextEPv 	
5 	libEGL.so 	eglDestroyContext 	
6 	libEGL.so 	eglMakeCurrent 	
7 	libxul.so 	mozilla::gl::GLContextEGL::MakeCurrentImpl(bool) 	gfx/gl/GLLibraryEGL.h
8 	libxul.so 	mozilla::gl::GLContext::MakeCurrent(bool) 	obj-firefox/dist/include/GLContext.h
9 	libxul.so 	mozilla::gl::GLContextEGL::Init() 	gfx/gl/GLContextProviderEGL.cpp
10 	libxul.so 	mozilla::gl::GLContextEGL::CreateGLContext(mozilla::gfx::SurfaceCaps const&, mozilla::gl::GLContextEGL*, bool, void*, void*) 	gfx/gl/GLContextProviderEGL.cpp
11 	libxul.so 	mozilla::gl::GLContextEGL::CreateEGLPBufferOffscreenContext(nsIntSize const&) 	gfx/gl/GLContextProviderEGL.cpp
12 	libxul.so 	mozilla::gl::GLContextProviderEGL::CreateOffscreen(nsIntSize const&, mozilla::gfx::SurfaceCaps const&, mozilla::gl::ContextFlags) 	gfx/gl/GLContextProviderEGL.cpp
13 	libxul.so 	mozilla::dom::CanvasRenderingContext2D::EnsureTarget() 	content/canvas/src/CanvasRenderingContext2D.cpp
14 	libxul.so 	mozilla::dom::CanvasRenderingContext2D::DrawImage(mozilla::dom::HTMLImageElementOrHTMLCanvasElementOrHTMLVideoElement const&, double, double, double, double, double, double, double, double, unsigned char, mozilla::ErrorResult&) 	content/canvas/src/CanvasRenderingContext2D.cpp
15 	libxul.so 	mozilla::dom::CanvasRenderingContext2DBinding::drawImage 	obj-firefox/dist/include/mozilla/dom/CanvasRenderingContext2D.h
16 	libxul.so 	mozilla::dom::CanvasRenderingContext2DBinding::genericMethod 	obj-firefox/dom/bindings/CanvasRenderingContext2DBinding.cpp
17 	libxul.so 	js::Invoke(JSContext*, JS::CallArgs, js::MaybeConstruct) 	js/src/jscntxtinlines.h
18 	libxul.so 	Interpret 	js/src/vm/Interpreter.cpp
19 	libxul.so 	js::RunScript 	js/src/vm/Interpreter.cpp
20 	libxul.so 	js::Invoke(JSContext*, JS::CallArgs, js::MaybeConstruct) 	js/src/vm/Interpreter.cpp
21 	libxul.so 	js::Invoke(JSContext*, JS::Value const&, JS::Value const&, unsigned int, JS::Value*, JS::MutableHandle<JS::Value>) 	js/src/vm/Interpreter.cpp
22 	libxul.so 	JS_CallFunctionValue(JSContext*, JSObject*, JS::Value, unsigned int, JS::Value*, JS::Value*) 	js/src/jsapi.cpp
23 	libxul.so 	mozilla::dom::EventHandlerNonNull::Call(JSContext*, JS::Handle<JSObject*>, nsDOMEvent&, mozilla::ErrorResult&) 	obj-firefox/dom/bindings/EventHandlerBinding.cpp
24 	libxul.so 	nsJSEventListener::HandleEvent(nsIDOMEvent*) 	obj-firefox/dist/include/mozilla/dom/EventHandlerBinding.h
25 	libxul.so 	nsEventListenerManager::HandleEventSubType(nsListenerStruct*, nsIDOMEvent*, mozilla::dom::EventTarget*, nsCxPusher*) 	content/events/src/nsEventListenerManager.cpp
26 	libxul.so 	nsEventListenerManager::HandleEventInternal(nsPresContext*, mozilla::WidgetEvent*, nsIDOMEvent**, mozilla::dom::EventTarget*, nsEventStatus*, nsCxPusher*) 	content/events/src/nsEventListenerManager.cpp
27 	libxul.so 	nsEventTargetChainItem::HandleEvent(nsEventChainPostVisitor&, ELMCreationDetector&, nsCxPusher*) 	content/events/src/nsEventListenerManager.h
28 	libxul.so 	nsEventTargetChainItem::HandleEventTargetChain(nsTArray<nsEventTargetChainItem>&, nsEventChainPostVisitor&, nsDispatchingCallback*, ELMCreationDetector&, nsCxPusher*) 	content/events/src/nsEventDispatcher.cpp
29 	libxul.so 	nsEventDispatcher::Dispatch(nsISupports*, nsPresContext*, mozilla::WidgetEvent*, nsIDOMEvent*, nsEventStatus*, nsDispatchingCallback*, nsCOMArray<mozilla::dom::EventTarget>*) 	content/events/src/nsEventDispatcher.cpp
30 	libxul.so 	nsEventDispatcher::DispatchDOMEvent(nsISupports*, mozilla::WidgetEvent*, nsIDOMEvent*, nsPresContext*, nsEventStatus*) 	content/events/src/nsEventDispatcher.cpp
31 	libxul.so 	nsINode::DispatchEvent(nsIDOMEvent*, bool*) 	content/base/src/nsINode.cpp
32 	libxul.so 	nsContentUtils::DispatchEvent(nsIDocument*, nsISupports*, nsAString_internal const&, bool, bool, bool, bool*) 	content/base/src/nsContentUtils.cpp
33 	libxul.so 	nsContentUtils::DispatchTrustedEvent(nsIDocument*, nsISupports*, nsAString_internal const&, bool, bool, bool*) 	content/base/src/nsContentUtils.cpp
34 	libxul.so 	nsAsyncDOMEvent::Run() 	content/events/src/nsAsyncDOMEvent.cpp
35 	libxul.so 	nsThread::ProcessNextEvent(bool, bool*) 	xpcom/threads/nsThread.cpp
36 	libxul.so 	NS_ProcessNextEvent(nsIThread*, bool) 	xpcom/glue/nsThreadUtils.cpp
37 	libxul.so 	mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) 	ipc/glue/MessagePump.cpp
38 	libxul.so 	MessageLoop::RunInternal() 	ipc/chromium/src/base/message_loop.cc
39 	libxul.so 	MessageLoop::Run() 	ipc/chromium/src/base/message_loop.cc
40 	libxul.so 	nsBaseAppShell::Run() 	widget/xpwidgets/nsBaseAppShell.cpp
41 	libxul.so 	nsAppStartup::Run() 	toolkit/components/startup/nsAppStartup.cpp
42 	libxul.so 	XREMain::XRE_mainRun() 	toolkit/xre/nsAppRunner.cpp
43 	libxul.so 	XREMain::XRE_main(int, char**, nsXREAppData const*) 	toolkit/xre/nsAppRunner.cpp
44 	libxul.so 	XRE_main 	toolkit/xre/nsAppRunner.cpp
45 	libxul.so 	GeckoStart 	toolkit/xre/nsAndroidStartup.cpp
46 		@0x8041bb63 	
47 	dalvik-heap (deleted) 	dalvik-heap (deleted)@0x552176 	
48 	libdvm.so 	dvmPlatformInvoke 	
49 	libdvm.so 	dvmCallJNIMethod_general 	
50 	libdvm.so 	dvmResolveNativeMethod 	
51 	libdvm.so 	dvmAsmSisterStart 	
52 	libdvm.so 	dvmMterpStd 	
53 	libdvm.so 	dvmInterpret 	
54 	libdvm.so 	dvmCallMethodV 	
55 	libdvm.so 	dvmCallMethod 	
56 	libdvm.so 	dvmDetachCurrentThread 	
57 	libc.so 	__thread_entry 	
58 	libc.so 	pthread_create
(Reporter)

Comment 1

5 years ago
Unable to reproduce it on Nexus 4 or Galaxy Tab (Android 4.0.4)
This is a spiking crash in Firefox for Android.
tracking-fennec: --- → ?
status-firefox26: --- → affected
status-firefox27: --- → affected
status-firefox28: --- → affected
status-firefox29: --- → ?
tracking-firefox28: --- → ?
Do we expect then that this is specific to HTC devices and webapp installation? Who can investigate further here?
It is not a device specific crash. We would need to repro this crash on 29 w/ the APK apps flow for it to be much of a thing to track. Ioana would you please check trunk when you have a moment?
Flags: needinfo?(ioana.chiorean)
(Reporter)

Comment 5

4 years ago
Hey,
I've tried to reproduce it on Nightly 29 with several devices but it was unsuccessful. This is not reproducing with 29.0a1 01/29/2014 - Synthetic Apk included

Devices:
HTC Desire HD - 2.3 - reported device
HTC Sensation 4G - 4.0.3
Galaxy Nexus - 4.3, 4.2 
Mototrola RAZR XT910 - 2.3.5
HTC Desire Z - 2.3.3
Motorola RAZR XT910 - 4.0.4
Flags: needinfo?(ioana.chiorean)
Since this is fixed with Synthetic APK's, do we care about old webapp users? Myk?
Flags: needinfo?(myk)
status-firefox29: ? → unaffected
Is using the Synthetic APKs something that could be backported to FF28 so we don't ship this regression?
tracking-firefox28: ? → +
This spiked as a crash on release. This is not really a regression. Something changed in our population.
(In reply to Wesley Johnston (:wesj) from comment #6)
> Since this is fixed with Synthetic APK's, do we care about old webapp users?
> Myk?

Hmm, hard to say.  We don't think we have many users of the existing implementation on Android (although we don't have good numbers).  But we're shipping the feature, so it should continue working until we replace it.

(In reply to Lukas Blakk [:lsblakk] from comment #7)
> Is using the Synthetic APKs something that could be backported to FF28 so we
> don't ship this regression?

That seems unlikely.  Synthetic APKs is a complete reimplementation of the feature comprising a handful of very large changes and a bunch of smaller ones.  So backporting it would be significant work, not to mention the risk of doing so for a reimplementation that we first began to land only a couple weeks ago.
Flags: needinfo?(myk)
tracking-fennec: ? → 28+
Brad - what's the plan here for 28 then if we can't backport Synthetic APKs?  Do you have someone to assign to this?  We're 2 betas away from throttling down on more speculative landings.
Flags: needinfo?(blassey.bugs)
(In reply to Lukas Blakk [:lsblakk] from comment #10)
> Brad - what's the plan here for 28 then if we can't backport Synthetic APKs?
> Do you have someone to assign to this?  We're 2 betas away from throttling
> down on more speculative landings.

This isn't in the top 50 crashes and, as Kevin said, this isn't actually a regression. I don't think we should do anything for this. Untracking.
tracking-fennec: 28+ → -
Flags: needinfo?(blassey.bugs)
tracking-firefox28: + → -
Whiteboard: [WebRuntime]
We've removed the old implementation, so we won't fix this.
Status: NEW → RESOLVED
Last Resolved: 4 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.