Closed Bug 1602646 Opened 6 years ago Closed 6 years ago

Intermittent GECKO(3512) | Assertion failure: mThread, at z:/build/build/src/xpcom/threads/nsThread.cpp:837

Categories

(WebExtensions :: Untriaged, defect, P5)

defect

Tracking

(firefox-esr68 unaffected, firefox71 unaffected, firefox72 unaffected, firefox73 fixed)

RESOLVED FIXED
mozilla73
Tracking Status
firefox-esr68 --- unaffected
firefox71 --- unaffected
firefox72 --- unaffected
firefox73 --- fixed

People

(Reporter: intermittent-bug-filer, Assigned: karlt)

References

(Regression)

Details

(Keywords: assertion, intermittent-failure, regression, Whiteboard: [stockwell fixed:patch])

Attachments

(2 files)

Filed by: rmaries [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer.html#?job_id=280391035&repo=autoland
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/QKzw7RAoR-eMy6bdpckLSw/runs/0/artifacts/public/logs/live_backing.log


[task 2019-12-09T23:45:33.818Z] 23:45:33 INFO - TEST-START | browser/components/extensions/test/mochitest/test_ext_all_apis.html
[task 2019-12-09T23:45:34.856Z] 23:45:34 INFO - GECKO(3512) | [Parent 3412, Main Thread] WARNING: we only accept nsIURI interface type, patch welcome: file z:/build/build/src/dom/ipc/PropertyBagUtils.cpp, line 112
[task 2019-12-09T23:45:35.331Z] 23:45:35 INFO - GECKO(3512) | [Parent 3412, Main Thread] WARNING: we only accept nsIURI interface type, patch welcome: file z:/build/build/src/dom/ipc/PropertyBagUtils.cpp, line 112
[task 2019-12-09T23:45:35.618Z] 23:45:35 INFO - GECKO(3512) | [Parent 3412, Main Thread] WARNING: Need BrowserChild to get the nativeWindow from!: file z:/build/build/src/widget/PuppetWidget.cpp, line 1095
[task 2019-12-09T23:45:35.653Z] 23:45:35 INFO - GECKO(3512) | [Child 4064, Main Thread] WARNING: Fallback to BasicLayerManager: file z:/build/build/src/dom/ipc/BrowserChild.cpp, line 2736
[task 2019-12-09T23:45:35.912Z] 23:45:35 INFO - GECKO(3512) | MEMORY STAT | vsize 566MB | vsizeMaxContiguous 504MB | residentFast 123MB | heapAllocated 18MB
[task 2019-12-09T23:45:35.939Z] 23:45:35 INFO - TEST-OK | browser/components/extensions/test/mochitest/test_ext_all_apis.html | took 2118ms
[task 2019-12-09T23:45:35.954Z] 23:45:35 INFO - TEST-START | Shutdown
[task 2019-12-09T23:45:35.954Z] 23:45:35 INFO - Passed: 2
[task 2019-12-09T23:45:35.954Z] 23:45:35 INFO - Failed: 0
[task 2019-12-09T23:45:35.955Z] 23:45:35 INFO - Todo: 0
[task 2019-12-09T23:45:35.955Z] 23:45:35 INFO - Mode: e10s
[task 2019-12-09T23:45:35.955Z] 23:45:35 INFO - Slowest: 2118ms - /tests/browser/components/extensions/test/mochitest/test_ext_all_apis.html
[task 2019-12-09T23:45:35.955Z] 23:45:35 INFO - SimpleTest FINISHED
[task 2019-12-09T23:45:35.955Z] 23:45:35 INFO - TEST-INFO | Ran 1 Loops
[task 2019-12-09T23:45:35.956Z] 23:45:35 INFO - SimpleTest FINISHED
[task 2019-12-09T23:45:36.132Z] 23:45:36 INFO - GECKO(3512) | [Parent 3412, Main Thread] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80040111: file z:/build/build/src/netwerk/cache/nsCacheService.cpp, line 855
[task 2019-12-09T23:45:36.133Z] 23:45:36 INFO - GECKO(3512) | [Parent 3412, Main Thread] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80040111: file z:/build/build/src/netwerk/cache/nsCacheService.cpp, line 818
[task 2019-12-09T23:45:36.133Z] 23:45:36 INFO - GECKO(3512) | [Parent 3412, Main Thread] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80040111: file z:/build/build/src/netwerk/cache/nsApplicationCacheService.cpp, line 158
[task 2019-12-09T23:45:36.152Z] 23:45:36 INFO - GECKO(3512) | Assertion failure: mThread, at z:/build/build/src/xpcom/threads/nsThread.cpp:837
[task 2019-12-09T23:46:04.295Z] 23:46:04 INFO - GECKO(3512) | #01: nsThread::AsyncShutdown() [xpcom/threads/nsThread.cpp:831]
[task 2019-12-09T23:46:04.295Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.296Z] 23:46:04 INFO - GECKO(3512) | #02: nsresult mozilla::detail::RunnableMethodImpl<nsIThread ,nsresult (nsIThread::)() attribute((stdcall)),1,mozilla::RunnableKind::Standard>::Run() [xpcom/threads/nsThreadUtils.h:1179]
[task 2019-12-09T23:46:04.296Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.296Z] 23:46:04 INFO - GECKO(3512) | #03: mozilla::SchedulerGroup::Runnable::Run() [xpcom/threads/SchedulerGroup.cpp:299]
[task 2019-12-09T23:46:04.296Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.296Z] 23:46:04 INFO - GECKO(3512) | #04: nsThread::ProcessNextEvent(bool,bool *) [xpcom/threads/nsThread.cpp:1257]
[task 2019-12-09T23:46:04.296Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.296Z] 23:46:04 INFO - GECKO(3512) | #05: nsThread::Shutdown() [xpcom/threads/nsThread.cpp:928]
[task 2019-12-09T23:46:04.296Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.297Z] 23:46:04 INFO - GECKO(3512) | #06: mozilla::image::DecodePoolImpl::Shutdown() [image/DecodePool.cpp:111]
[task 2019-12-09T23:46:04.297Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.297Z] 23:46:04 INFO - GECKO(3512) | #07: mozilla::image::DecodePool::Observe(nsISupports *,char const *,char16_t const *) [image/DecodePool.cpp:437]
[task 2019-12-09T23:46:04.297Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.297Z] 23:46:04 INFO - GECKO(3512) | #08: nsObserverList::NotifyObservers(nsISupports *,char const *,char16_t const *) [xpcom/ds/nsObserverList.cpp:65]
[task 2019-12-09T23:46:04.297Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.297Z] 23:46:04 INFO - GECKO(3512) | #09: nsObserverService::NotifyObservers(nsISupports *,char const *,char16_t const *) [xpcom/ds/nsObserverService.cpp:295]
[task 2019-12-09T23:46:04.297Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.297Z] 23:46:04 INFO - GECKO(3512) | #10: mozilla::ShutdownXPCOM(nsIServiceManager *) [xpcom/build/XPCOMInit.cpp:639]
[task 2019-12-09T23:46:04.297Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.298Z] 23:46:04 INFO - GECKO(3512) | #11: XRE_TermEmbedding() [toolkit/xre/nsEmbedFunctions.cpp:226]
[task 2019-12-09T23:46:04.298Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.298Z] 23:46:04 INFO - GECKO(3512) | #12: mozilla::ipc::ScopedXREEmbed::Stop() [ipc/glue/ScopedXREEmbed.cpp:91]
[task 2019-12-09T23:46:04.298Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.298Z] 23:46:04 INFO - GECKO(3512) | #13: XRE_InitChildProcess(int,char * * const,XREChildData const *) [toolkit/xre/nsEmbedFunctions.cpp:786]
[task 2019-12-09T23:46:04.298Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.298Z] 23:46:04 INFO - GECKO(3512) | #14: mozilla::BootstrapImpl::XRE_InitChildProcess(int,char * * const,XREChildData const *) [toolkit/xre/Bootstrap.cpp:67]
[task 2019-12-09T23:46:04.298Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.453Z] 23:46:04 INFO - GECKO(3512) | #15: NS_internal_main(int,char * *,char * *) [browser/app/nsBrowserApp.cpp:303]
[task 2019-12-09T23:46:04.453Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.453Z] 23:46:04 INFO - GECKO(3512) | #16: wmain [toolkit/xre/nsWindowsWMain.cpp:131]
[task 2019-12-09T23:46:04.453Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.454Z] 23:46:04 INFO - GECKO(3512) | #17: static int __scrt_common_main_seh() [f:/dd/vctools/crt/vcstartup/src/startup/exe_common.inl:288]
[task 2019-12-09T23:46:04.454Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.454Z] 23:46:04 INFO - GECKO(3512) | #18: kernel32.dll + 0x4ef3c
[task 2019-12-09T23:46:04.454Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.455Z] 23:46:04 INFO - GECKO(3512) | #19: ntdll.dll + 0x63618
[task 2019-12-09T23:46:04.455Z] 23:46:04 INFO -
[task 2019-12-09T23:46:04.456Z] 23:46:04 INFO - GECKO(3512) | #20: ntdll.dll + 0x635eb

Karl can this be from bug 1599922 ?

Flags: needinfo?(karlt)

Yes, looks likely.

Flags: needinfo?(karlt)
Regressed by: 1599922
Has Regression Range: --- → yes
Keywords: regression
Assignee: nobody → karlt
Status: NEW → ASSIGNED

mShutdownRequired is already tested to avoid multiple shutdown runnables, so
callers need not test mThread, which is racy.

DecodePoolImpl, at least, can call both Shutdown() and AsyncShutdown()
on a single thread, and the later call can occur at the same time as the
thread is exiting its event loop and clearing mThread.
https://searchfox.org/mozilla-central/rev/23d4bffcad365e68d2d45776017056b76ca9a968/image/DecodePool.cpp#91

AsyncShutdown() and Shutdown() now return NS_OK when ShutdownInternal()
returns null because this would now usually happen when shutdown has already
been initiated.

GetCurrentPhysicalThread and GetCurrentVirtualThread are, in practice,
identical, as the TLS override that GetCurrentVirtualThread depends on
is never actually set. This simply removes that and renames some things/
deletes some comments.

Rebased across https://hg.mozilla.org/mozilla-central/rev/3f0b4e206853
by Karl Tomlinson <karlt+@karlt.net>.

Pushed by ktomlinson@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/f77c4b4c73cd Remove vestigial references to cooperative scheduling r=froydnj https://hg.mozilla.org/integration/autoland/rev/b1e8c6f59879 remove checks that mThread is set before calling ShutdownInternal() r=froydnj
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla73
Whiteboard: [stockwell disable-recommended] → [stockwell fixed:patch]
Regressions: 1604005
No longer regressions: 1604005
Regressions: 1634846
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: