Closed Bug 959529 Opened 10 years ago Closed 10 years ago

crash in __libc_android_abort | dlfree | free | _ZdlPv

Categories

(Firefox for Android Graveyard :: Web Apps (PWAs), defect)

27 Branch
All
Android
defect
Not set
critical

Tracking

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

RESOLVED WONTFIX
Tracking Status
firefox26 --- affected
firefox27 --- affected
firefox28 - affected
firefox29 --- unaffected
fennec - ---

People

(Reporter: ioana.chiorean, Unassigned)

Details

(Keywords: crash, Whiteboard: [WebRuntime])

Crash Data

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
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: --- → ?
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)
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)
Is using the Synthetic APKs something that could be backported to FF28 so we don't ship this regression?
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)
Whiteboard: [WebRuntime]
We've removed the old implementation, so we won't fix this.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → WONTFIX
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.