Closed
Bug 981684
Opened 11 years ago
Closed 11 years ago
ANR: Hang in org.mozilla.gecko.favicons.cache.FaviconCache.getFaviconForDimensions
Categories
(Firefox for Android Graveyard :: General, defect)
Tracking
(fennec+)
RESOLVED
WORKSFORME
| Tracking | Status | |
|---|---|---|
| fennec | + | --- |
People
(Reporter: jchen, Assigned: ckitching)
References
Details
(Whiteboard: [ANR])
This has been one of the top ANRs going back to at least 29. The main thread stack is,
> java.lang.Object.wait
> java.lang.Thread.parkFor (line 1205)
> sun.misc.Unsafe.park (line 325)
> java.util.concurrent.locks.LockSupport.park (line 157)
> java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt (line 813)
> java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireShared (line 943)
> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireShared (line 1260)
> java.util.concurrent.Semaphore.acquireUninterruptibly (line 306)
> org.mozilla.gecko.favicons.cache.FaviconCache.upgradeReadToWrite (line 167)
> org.mozilla.gecko.favicons.cache.FaviconCache.getFaviconForDimensions (line 413)
> org.mozilla.gecko.favicons.Favicons.getSizedFaviconFromCache (line 182)
> org.mozilla.gecko.favicons.Favicons.getSizedFaviconForPageFromLocal (line 210)
> org.mozilla.gecko.favicons.Favicons.getSizedFaviconForPageFromLocal (line 228)
> org.mozilla.gecko.home.TwoLinePageRow.updateFromCursor (line 235)
> org.mozilla.gecko.home.BrowserSearch$SearchAdapter.bindView (line 854)
> org.mozilla.gecko.home.MultiTypeCursorAdapter.getView (line 62)
> android.widget.AbsListView.obtainView (line 2240)
> android.widget.ListView.makeAndAddView (line 1790)
> android.widget.ListView.fillDown (line 691)
> android.widget.ListView.fillSpecific (line 1349)
> android.widget.ListView.layoutChildren (line 1608)
> android.widget.AbsListView.onLayout (line 2091)
> android.view.View.layout (line 14817)
> android.view.ViewGroup.layout (line 4631)
> android.widget.LinearLayout.setChildFrame (line 1671)
> android.widget.LinearLayout.layoutVertical (line 1525)
> android.widget.LinearLayout.onLayout (line 1434)
> android.view.View.layout (line 14817)
> android.view.ViewGroup.layout (line 4631)
> android.widget.FrameLayout.layoutChildren (line 453)
> android.widget.FrameLayout.onLayout (line 388)
> android.view.View.layout (line 14817)
> android.view.ViewGroup.layout (line 4631)
> android.widget.FrameLayout.layoutChildren (line 453)
> android.widget.FrameLayout.onLayout (line 388)
> android.view.View.layout (line 14817)
> android.view.ViewGroup.layout (line 4631)
> android.widget.RelativeLayout.onLayout (line 1055)
> android.view.View.layout (line 14817)
> android.view.ViewGroup.layout (line 4631)
> android.widget.RelativeLayout.onLayout (line 1055)
> android.view.View.layout (line 14817)
> android.view.ViewGroup.layout (line 4631)
> android.widget.FrameLayout.layoutChildren (line 453)
> android.widget.FrameLayout.onLayout (line 388)
> android.view.View.layout (line 14817)
> android.view.ViewGroup.layout (line 4631)
> android.widget.LinearLayout.setChildFrame (line 1671)
> android.widget.LinearLayout.layoutVertical (line 1525)
> android.widget.LinearLayout.onLayout (line 1434)
> android.view.View.layout (line 14817)
> android.view.ViewGroup.layout (line 4631)
> android.widget.FrameLayout.layoutChildren (line 453)
> android.widget.FrameLayout.onLayout (line 388)
> android.view.View.layout (line 14817)
> android.view.ViewGroup.layout (line 4631)
> android.view.ViewRootImpl.performLayout (line 1987)
> android.view.ViewRootImpl.performTraversals (line 1744)
> android.view.ViewRootImpl.doTraversal (line 1000)
> android.view.ViewRootImpl$TraversalRunnable.run (line 5670)
> android.view.Choreographer$CallbackRecord.run (line 761)
> android.view.Choreographer.doCallbacks (line 574)
> android.view.Choreographer.doFrame (line 544)
> android.view.Choreographer$FrameDisplayEventReceiver.run (line 747)
> android.os.Handler.handleCallback (line 733)
> android.os.Handler.dispatchMessage (line 95)
> android.os.Looper.loop (line 136)
> android.app.ActivityThread.main (line 5017)
> java.lang.reflect.Method.invokeNative
> java.lang.reflect.Method.invoke (line 515)
> com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (line 779)
> com.android.internal.os.ZygoteInit.main (line 595)
> dalvik.system.NativeStart.main
The background thread is also blocked on the same Semaphore, so I suspect it could be a deadlock. The background thread stack is,
> java.lang.Object.wait
> java.lang.Thread.parkFor (line 1205)
> sun.misc.Unsafe.park (line 325)
> java.util.concurrent.locks.LockSupport.park (line 157)
> java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt (line 813)
> java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireShared (line 943)
> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireShared (line 1260)
> java.util.concurrent.Semaphore.acquireUninterruptibly (line 306)
> org.mozilla.gecko.favicons.cache.FaviconCache.upgradeReadToWrite (line 171)
> org.mozilla.gecko.favicons.cache.FaviconCache.getFaviconForDimensions (line 413)
> org.mozilla.gecko.favicons.Favicons.getSizedFaviconFromCache (line 182)
> org.mozilla.gecko.favicons.LoadFaviconTask.pushToCacheAndGetResult (line 432)
> org.mozilla.gecko.favicons.LoadFaviconTask.doInBackground$2d4c763b (line 354)
> org.mozilla.gecko.favicons.LoadFaviconTask.doInBackground$42af7916 (line 42)
> org.mozilla.gecko.util.UiAsyncTask$BackgroundTaskRunnable.run (line 48)
> android.os.Handler.handleCallback (line 733)
> android.os.Handler.dispatchMessage (line 95)
> android.os.Looper.loop (line 136)
> org.mozilla.gecko.util.GeckoBackgroundThread.run (line 32)
| Reporter | ||
Updated•11 years ago
|
Blocks: FaviconRevamp
Updated•11 years ago
|
tracking-fennec: --- → ?
Comment 1•11 years ago
|
||
Perhaps fixed by Bug 969417, which is awaiting an updated patch.
OS: Linux → Android
Comment 2•11 years ago
|
||
needinfo on ckitching to see if he agrees, and maybe rev that patch…
Depends on: 969417
Flags: needinfo?(chriskitching)
| Assignee | ||
Comment 3•11 years ago
|
||
Seems likely. I'll get the revised patch sorted in a few hours.
Such fail. Trying to implement lock upgrading in MRSW without rollbacks. Wow.
Flags: needinfo?(chriskitching)
Updated•11 years ago
|
Assignee: nobody → chriskitching
tracking-fennec: ? → +
| Reporter | ||
Comment 5•11 years ago
|
||
(In reply to Richard Newman [:rnewman] from comment #4)
> Jim: any ANRs in the past couple of Nightlies?
Last week's data look good. Going to mark this as resolved.
Status: NEW → RESOLVED
Closed: 11 years ago
Flags: needinfo?(nchen)
Resolution: --- → WORKSFORME
Updated•4 years ago
|
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•