This repository was archived by the owner on Jul 9, 2025. It is now read-only.
Closed
Conversation
martinthomson
added a commit
to martinthomson/gecko-dev
that referenced
this pull request
Sep 18, 2014
Let's fix this typo rather than comment it out.
walac
pushed a commit
to walac/gecko-dev
that referenced
this pull request
Nov 18, 2014
Bug 1095480 - enable mochitests for linux64 mulet r=lightsofapollo,mshal
rainemak
pushed a commit
to rainemak/gecko-dev-mirror
that referenced
this pull request
Jul 20, 2015
…ackports_jb29937 For nemo/low res painting backports jb29937
weilonge
added a commit
to weilonge/gecko-dev
that referenced
this pull request
Nov 20, 2015
…PI/master/demo Fix minor build failed.
linclark
added a commit
to linclark/gecko-dev
that referenced
this pull request
Apr 11, 2016
* Fix getRepeatId() for falsy values * Switch to mochitest * Update head.js Note: This is necessary because the head.js files are duplicated. See https://github.com/bgrins/gecko-dev/issues/16 * Switch getRepeatId() test to use RDP * Delete obsolete tests * Remove replacer logic * Switch to using components/head.js
JuniorHsu
pushed a commit
to JuniorHsu/gecko-dev
that referenced
this pull request
Jun 14, 2016
Bug 1267129 - Fix ReferenceError: XPCOMUtils; a=jocheng
moz-v2v-gh
pushed a commit
that referenced
this pull request
Sep 3, 2017
Various cleanup. Source-Repo: https://github.com/mozilla/webdriver-rust Source-Revision: 338dcf0716188d3fa89ba2062bb4cf14db660e22 --HG-- extra : subtree_source : http%3A//tristan.corp.lon2.mozilla.com%3A8000 extra : subtree_revision : 153d50bc115a597a019b517a87953cb12bceec92
aethanyc
pushed a commit
to aethanyc/gecko-dev
that referenced
this pull request
Sep 4, 2017
Various cleanup. Source-Repo: https://github.com/mozilla/webdriver-rust Source-Revision: 338dcf0716188d3fa89ba2062bb4cf14db660e22
daoshengmu
pushed a commit
to daoshengmu/gecko-dev
that referenced
this pull request
Sep 8, 2017
Various cleanup. Source-Repo: https://github.com/mozilla/webdriver-rust Source-Revision: 338dcf0716188d3fa89ba2062bb4cf14db660e22
moz-v2v-gh
pushed a commit
that referenced
this pull request
Jun 2, 2021
Here's what's going on (relevant browser is browser 36). [rr 502130 274898]RestoreDocShellState(browser=36, bc=94, ) [rr 502130 274902]RemoteWebNavigation.currentURI browser=36 bc=94 http://mochi.test:8888/#1 [rr 502130 274906]BrowsingContext::LoadURI(browser=36, bc=94, about:blank) From a previous restore we correctly wait for: 0 _restoreTabContent( <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":5984:30] <failed to get 'this' value> 1 _sendRestoreTabContent( <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":6002:11] <failed to get 'this' value> 2 restoreTabContent( <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":4684:9] <failed to get 'this' value> 3 restoreTab( <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":4565:13] <failed to get 'this' value> 4 restoreTabs( <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> aSelectTab = "1") ["resource:///modules/sessionstore/SessionStore.jsm":4413:11] <failed to get 'this' value> 5 ssi_restoreWindow( <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":4189:11] <failed to get 'this' value> 6 _restoreWindowsFeaturesAndTabs( <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":4275:11] <failed to get 'this' value> 7 _restoreWindowsInReversedZOrder( <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":4299:9] <failed to get 'this' value> 8 ssi_restoreWindows/<( <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":4359:11] [rr 502506 275264]BrowsingContext::LoadURI(browser=36, bc=94, about:blank) [rr 502506 275268]DocumentChannelChild::AsyncOpen(browser=36, bc=94, about:blank) [rr 502130 275388]RemoteWebNavigation.currentURI browser=36 bc=94 http://mochi.test:8888/#1 [rr 502506 275629]BrowserChild::OnLocationChange(browser=36, bc=94, about:blank) [rr 502130 276944]updateForLocationChange browser=36 bc=94 - about:blank [rr 502130 277084]RemoteWebNavigation.currentURI browser=36 bc=94 about:blank [rr 502130 277358]RestoreDocShellState(browser=36, bc=94, http://example.com/browser/browser/base/content/test/tabs/file_new_tab_page.html) [rr 502506 277378]BrowserChild::OnLocationChange(browser=36, bc=94, http://example.com/browser/browser/base/content/test/tabs/file_new_tab_page.html) [rr 502130 277390]RemoteWebNavigation.currentURI browser=36 bc=94 about:blank [rr 502130 277554]BrowserParent::LoadURL(browser=36, bc=94, about:blank) From: #18 0x00007ff0bdb1efcc in mozilla::dom::BrowserParent::LoadURL(nsDocShellLoadState*) (this=0x7ff08f2b9800, aLoadState=0x7ff094e1d580) at /home/emilio/src/moz/gecko/dom/ipc/BrowserParent.cpp:861 #19 0x00007ff0bc1117f9 in nsFrameLoader::ReallyStartLoadingInternal() (this=0x7ff08f283400) at /home/emilio/src/moz/gecko/dom/base/nsFrameLoader.cpp:718 #20 0x00007ff0bc11129f in nsFrameLoader::ReallyStartLoading() (this=0x7ff08f283400) at /home/emilio/src/moz/gecko/dom/base/nsFrameLoader.cpp:640 #21 0x00007ff0bc0002f5 in mozilla::dom::Document::MaybeInitializeFinalizeFrameLoaders() (this=0x7ff0a17e2000) at /home/emilio/src/moz/gecko/dom/base/Document.cpp:9008 #22 0x00007ff0bc057891 in mozilla::detail::RunnableMethodArguments<>::applyImpl<mozilla::dom::Document, void (mozilla::dom::Document::*)()>(mozilla::dom::Document*, void (mozilla::dom::Document::*)(), mozilla::Tuple<>&, std::integer_sequence<unsigned long>) (o=<optimized out>, m=<optimized out>, args=<optimized out>) at /home/emilio/src/moz/gecko/obj-debug/dist/include/nsThreadUtils.h:1150 #23 mozilla::detail::RunnableMethodArguments<>::apply<mozilla::dom::Document, void (mozilla::dom::Document::*)()>(mozilla::dom::Document*, void (mozilla::dom::Document::*)()) (this=<optimized out>, o=<optimized out>, m=<optimized out>) at /home/emilio/src/moz/gecko/obj-debug/dist/include/nsThreadUtils.h:1156 #24 mozilla::detail::RunnableMethodImpl<mozilla::dom::Document*, void (mozilla::dom::Document::*)(), true, (mozilla::RunnableKind)0>::Run() (this=<optimized out>) at /home/emilio/src/moz/gecko/obj-debug/dist/include/nsThreadUtils.h:1203 #25 0x00007ff0bbef8209 in nsContentUtils::RemoveScriptBlocker() () at /home/emilio/src/moz/gecko/dom/base/nsContentUtils.cpp:5696 #26 0x00007ff0bc11c427 in nsAutoScriptBlocker::~nsAutoScriptBlocker() (this=<optimized out>) at /home/emilio/src/moz/gecko/obj-debug/dist/include/nsContentUtils.h:3499 #27 nsFrameLoaderOwner::ChangeRemotenessCommon(nsFrameLoaderOwner::ChangeRemotenessContextType const&, mozilla::dom::RemotenessChangeOptions const&, bool, bool, mozilla::dom::BrowsingContextGroup*, std::function<void ()>&, mozilla::ErrorResult&) (this=<optimized out>, this@entry=0x7ff0a041b608, aContextType=@0x7ffe238847fc: nsFrameLoaderOwner::ChangeRemotenessContextType::PRESERVE, aOptions= ..., aSwitchingInProgressLoad=false, aIsRemote=<optimized out>, aGroup=<optimized out>, aGroup@entry=0x0, aFrameLoaderInit=..., aRv=...) at /home/emilio/src/moz/gecko/dom/base/nsFrameLoaderOwner.cpp:191 #28 0x00007ff0bc11c81f in nsFrameLoaderOwner::ChangeRemoteness(mozilla::dom::RemotenessOptions const&, mozilla::ErrorResult&) (this=0x7ff0a041b608, aOptions=..., rv=...) at /home/emilio/src/moz/gecko/dom/base/nsFrameLoaderOwner.cpp:250 #29 0x00007ff0bcb59003 in mozilla::dom::XULFrameElement_Binding::changeRemoteness(JSContext*, JS::Handle<JSObject*>, void*, JSJitMethodCallArgs const&)Traceback (most recent call last): File "/home/emilio/src/moz/gecko/js/src/gdb/mozilla/Root.py", line 55, in to_string ptr = ptr.dereference() gdb.error: value has been optimized out (cx_=<optimized out>, obj= , void_self=<optimized out>, args=...) at XULFrameElementBinding.cpp:513 #30 0x00007ff0bcecc02a in mozilla::dom::binding_detail::GenericMethod<mozilla::dom::binding_detail::NormalThisPolicy, mozilla::dom::binding_detail::ThrowExceptions>(JSContext*, unsigned int, JS::Value*) (cx=0x1, cx@entry=0x7ff0a871b000, argc=<optimized out>, vp=<optimized out>) at /home/emilio/src/moz/gecko/dom/bindings/BindingUtils.cpp:3297 #31 0x00007ff0bf67b1f1 in CallJSNative(JSContext*, bool (*)(JSContext*, unsigned int, JS::Value*), js::CallReason, JS::CallArgs const&) From: 0 updateBrowserRemoteness( <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> ) ["chrome://browser/content/tabbrowser.js":1937:15] <failed to get 'this' value> 1 updateBrowserRemotenessByURL( <Failed to get argument while inspecting stack frame> aURL = ""http://example.com/browser/browser/base/content/test/tabs/file_new_tab_page.html"") ["chrome://browser/content/tabbrowser.js":2052:20] <failed to get 'this' value> 2 restoreTabContent( <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":4662:38] <failed to get 'this' value> 3 restoreTab( <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":4565:13] <failed to get 'this' value> 4 restoreTabs( <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> aSelectTab = "2") ["resource:///modules/sessionstore/SessionStore.jsm":4413:11] <failed to get 'this' value> 5 ssi_restoreWindow( <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":4189:11] <failed to get 'this' value> 6 _restoreWindowsFeaturesAndTabs( <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":4275:11] <failed to get 'this' value> 7 _restoreWindowsInReversedZOrder( <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":4299:9] <failed to get 'this' value> 8 ssi_restoreWindows/<( <Failed to get argument while inspecting stack frame> ) ["resource:///modules/sessionstore/SessionStore.jsm":4359:11] This load triggers a remoteness change. [rr 502130 277558]RemoteWebNavigation.currentURI browser=36 bc=94 undefined [rr 502130 277561]RemoteWebNavigation.currentURI browser=36 bc=94 about:blank [rr 502130 277564]RestoreDocShellState(browser=36, bc=94, http://example.com/browser/browser/base/content/test/tabs/file_new_tab_page.html) [rr 502130 277568]RemoteWebNavigation.currentURI browser=36 bc=94 about:blank [rr 502130 277572]BrowsingContext::LoadURI(browser=36, bc=94, http://example.com/browser/browser/base/content/test/tabs/file_new_tab_page.html) This is the load that should actually end up in the browsing context. [rr 502578 280053]DocumentChannelChild::AsyncOpen(browser=36, bc=94, about:blank) From the previous remoteness update. [rr 502130 280138]RemoteWebNavigation.currentURI browser=36 bc=94 about:blank [rr 502130 280141]RemoteWebNavigation.currentURI browser=36 bc=94 about:blank [rr 502130 280143]RemoteWebNavigation.currentURI browser=36 bc=94 about:blank [rr 502130 280146]RemoteWebNavigation.currentURI browser=36 bc=94 about:blank At this point, we try to use the BFCache, and end up replacing the browsing context: #0 mozilla::dom::CanonicalBrowsingContext::AllowedInBFCache(mozilla::Maybe<unsigned long> const&) (this=0x7ff08f2b5800, aChannelId=...) at /home/emilio/src/moz/gecko/docshell/base/CanonicalBrowsingContext.cpp:2158 #1 0x00007ff0bb3157c1 in mozilla::net::DocumentLoadListener::MaybeTriggerProcessSwitch(bool*) (this=this@entry=0x7ff093b74090, aWillSwitchToRemote=aWillSwitchToRemote@entry=0x7ffe23887838) at /home/emilio/src/moz/gecko/netwerk/ipc/DocumentLoadListener.cpp:1723 #2 0x00007ff0bb317feb in mozilla::net::DocumentLoadListener::OnStartRequest(nsIRequest*) (this=0x7ff093b74090, aRequest=0x7ff0a0b7a3c8) at /home/emilio/src/moz/gecko/netwerk/ipc/DocumentLoadListener.cpp:2263 #3 0x00007ff0bb238a0c in mozilla::net::ParentChannelListener::OnStartRequest(nsIRequest*) (this=0x7ff08d5c4ee0, aRequest=0x7ff0a0b7a3c8) at /home/emilio/src/moz/gecko/netwerk/protocol/http/ParentChannelListener.cpp:91 #4 0x00007ff0bb9abec2 in nsDocumentOpenInfo::OnStartRequest(nsIRequest*) (this=<optimized out>, request=0x7ff0a0b7a3c8) at /home/emilio/src/moz/gecko/uriloader/base/nsURILoader.cpp:166 #5 0x00007ff0bb32baf0 in mozilla::net::ParentProcessDocumentOpenInfo::OnDocumentStartRequest(nsIRequest*) (this=0x7ff093bc5b80, request=0x7ff0a0b7a3c8) at /home/emilio/src/moz/gecko/netwerk/ipc/DocumentLoadListener.cpp:292 #6 0x00007ff0bae6446c in nsBaseChannel::OnStartRequest(nsIRequest*) (this=<optimized out>, request=<optimized out>) at /home/emilio/src/moz/gecko/netwerk/base/nsBaseChannel.cpp:833 #7 0x00007ff0bae82bdd in nsInputStreamPump::OnStateStart() (this=this@entry=0x7ff08f2593c0) at /home/emilio/src/moz/gecko/netwerk/base/nsInputStreamPump.cpp:481 #8 0x00007ff0bae828d9 in nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) (this=0x7ff08f2593c0, stream=<optimized out>) at /home/emilio/src/moz/gecko/netwerk/base/nsInputStreamPump.cpp:390 #9 0x00007ff0bae8339b in non-virtual thunk to nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) () at /home/emilio/src/moz/gecko/netwerk/base/nsInputStreamPump.cpp:632 #10 0x00007ff0bacd29d5 in mozilla::NonBlockingAsyncInputStream::RunAsyncWaitCallback(mozilla::NonBlockingAsyncInputStream::AsyncWaitRunnable*, already_AddRefed<nsIInputStreamCallback>) (this=this@entry=0x7ff094eb5a50, aRunnable=aRunnable@entry=0x7ff08f228560, aCallback=...) at /home/emilio/src/moz/gecko/xpcom/io/NonBlockingAsyncInputStream.cpp:397 #11 0x00007ff0bacdf2ec in mozilla::NonBlockingAsyncInputStream::AsyncWaitRunnable::Run() (this=0x7ff08f228560) at /home/emilio/src/moz/gecko/xpcom/io/NonBlockingAsyncInputStream.cpp:33 #12 0x00007ff0bad48d04 in mozilla::RunnableTask::Run() (this=0x7ff093bc5980) at /home/emilio/src/moz/gecko/xpcom/threads/TaskController.cpp:482 #13 0x00007ff0bad316d4 in mozilla::TaskController::DoExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex&> const&) (this=<optimized out>, this@entry=0x7ff0c54f2400, aProofOfLock=...) at /home/emilio/src/moz/gecko/xpcom/threads/TaskController.cpp:766 #14 0x00007ff0bad3091d in mozilla::TaskController::ExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex&> const&) (this=this@entry=0x7ff0c54f2400, aProofOfLock=...) at /home/emilio/src/moz/gecko/xpcom/threads/TaskController.cpp:621 #15 0x00007ff0bad30a83 in mozilla::TaskController::ProcessPendingMTTask(bool) (this=0x7ff0c54f2400, aMayWait=false) at /home/emilio/src/moz/gecko/xpcom/threads/TaskController.cpp:405 #16 0x00007ff0bad4388f in mozilla::TaskController::InitializeInternal()::$_0::operator()() const (this=<optimized out>) at /home/emilio/src/moz/gecko/xpcom/threads/TaskController.cpp:138 #17 mozilla::detail::RunnableFunction<mozilla::TaskController::InitializeInternal()::$_0>::Run() (this=<optimized out>) at /home/emilio/src/moz/gecko/obj-debug/dist/include/nsThreadUtils.h:534 #18 0x00007ff0bad3b7f6 in nsThread::ProcessNextEvent(bool, bool*) (this=0x7ff0c541d680, aMayWait=false, aResult=0x7ffe23888437) at /home/emilio/src/moz/gecko/xpcom/threads/nsThread.cpp:1159 #19 0x00007ff0bad3f384 in NS_ProcessNextEvent(nsIThread*, bool) (aThread=0x7ff08f2b5800, aThread@entry=0x7ff0c541d680, aMayWait=false) at /home/emilio/src/moz/gecko/xpcom/threads/nsThreadUtils.cpp:548 #20 0x00007ff0bb43dfe0 in mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) (this=0x7ff0c54d12c0, aDelegate=0x7ff0c54353e0) at /home/emilio/src/moz/gecko/ipc/glue/MessagePump.cpp:85 #21 0x00007ff0bb3be7b7 in MessageLoop::RunInternal() (this=this@entry=0x7ff0c54353e0) at /home/emilio/src/moz/gecko/ipc/chromium/src/base/message_loop.cc:335 #22 0x00007ff0bb3be707 in MessageLoop::RunHandler() (this=0x7ff0c54353e0) at /home/emilio/src/moz/gecko/ipc/chromium/src/base/message_loop.cc:328 #23 MessageLoop::Run() (this=0x7ff0c54353e0) at /home/emilio/src/moz/gecko/ipc/chromium/src/base/message_loop.cc:310 #24 0x00007ff0bded2bdb in nsBaseAppShell::Run() (this=0x7ff0a880c580) at /home/emilio/src/moz/gecko/widget/nsBaseAppShell.cpp:137 #25 0x00007ff0bf449d85 in nsAppStartup::Run() (this=0x7ff0a883de20) at /home/emilio/src/moz/gecko/toolkit/components/startup/nsAppStartup.cpp:273 #26 0x00007ff0bf5428b6 in XREMain::XRE_mainRun() (this=<optimized out>, this@entry=0x7ffe238887c0) at /home/emilio/src/moz/gecko/toolkit/xre/nsAppRunner.cpp:5239 #27 0x00007ff0bf5433ef in XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) (this=this@entry=0x7ffe238887c0, argc=argc@entry=5, argv=argv@entry=0x7ffe23889a68, aConfig=<optimized out>) at /home/emilio/src/moz/gecko/toolkit/xre/nsAppRunner.cpp:5437 #28 0x00007ff0bf54385e in XRE_main(int, char**, mozilla::BootstrapConfig const&) (argc=-1816706824, argv=0x7ff0c56441a0, aConfig=...) at /home/emilio/src/moz/gecko/toolkit/xre/nsAppRunner.cpp:5496 #29 0x0000562d08f8e415 in do_main(int, char**, char**) (argc=-1816706824, argv=0x7ffe23889a68, envp=<optimized out>) at /home/emilio/src/moz/gecko/browser/app/nsBrowserApp.cpp:224 [rr 502130 280199]CanonicalBrowsingContext::ReplacedBy(94 -> 104) [rr 502130 280344]didChangeRemoteness browser=36, bc=104 [rr 502130 280348]RemoteWebNavigation.currentURI browser=36 bc=104 undefined [rr 502130 280625]RedirectToRealChannel(36, about:blank) [rr 502578 280695]BrowserChild::OnLocationChange(browser=36, bc=94, http://example.com/browser/browser/base/content/test/tabs/file_new_tab_page.html) [rr 502578 280699]BrowsingContext::LoadURI(browser=36, bc=94, http://example.com/browser/browser/base/content/test/tabs/file_new_tab_page.html) [rr 502578 280703]DocumentChannelChild::AsyncOpen(browser=36, bc=94, http://example.com/browser/browser/base/content/test/tabs/file_new_tab_page.html) This is the LoadURI call for the "final" load, however it went to the wrong browsing context, as we just replaced this! [rr 502130 280803]updateForLocationChange browser=36 bc=104 - http://example.com/browser/browser/base/content/test/tabs/file_new_tab_page.html [rr 502130 280807]RemoteWebNavigation.currentURI browser=36 bc=104 http://example.com/browser/browser/base/content/test/tabs/file_new_tab_page.html [rr 502578 281334]BrowserChild::OnLocationChange(browser=36, bc=104, about:blank) And this one is from the process switch. [rr 502130 281461]updateForLocationChange browser=36 bc=104 - about:blank [rr 502130 281465]RemoteWebNavigation.currentURI browser=36 bc=104 about:blank [rr 502130 282028] ⰲ겿{"action":"test_status","time":1621467211822,"thread":null,"pid":null,"source":"mochitest","test":"chrome://mochitests/content/browser/browser/base/content/test/tabs/browser_new_tab_insert_position.js","subtest":"tab pos 0 matched http://mochi.test:8888/#0","status":"PASS","message":"","js_source":"TestRunner.js"}ⰲ겿 [rr 502130 282031]RemoteWebNavigation.currentURI browser=36 bc=104 about:blank [rr 502130 282033]RemoteWebNavigation.currentURI browser=36 bc=104 about:blank [rr 502130 282117] So this is certainly the easy fix, but I think we should generally try to deal with this better, somehow? Differential Revision: https://phabricator.services.mozilla.com/D115560
luyahan
added a commit
to luyahan/gecko-dev
that referenced
this pull request
Sep 1, 2022
* enable codegen
moz-v2v-gh
pushed a commit
that referenced
this pull request
Jan 23, 2024
…ect> / <embed> as subdocuments. r=longsonr These look like two really old bugs. Part of the issue is that <object> / <embed> manage their frame loader quite differently from <iframe>. This means that we may have a PresShell / ViewManager / etc for a frame loader that doesn't yet have a frame associated. For example, this is the viewport creation for the SVG document that reproduces the problem: #0 0x00005cc60e8302e7 in mozilla::ViewportFrame::SetViewInternal(nsView*) (this=0x68599020, aView=0x683d8f00) at /home/emilio/src/moz/gecko/obj-debug/dist/include/mozilla/ViewportFrame.h:106 #1 0x00005cc60e842858 in nsIFrame::SetView(nsView*) (this=0x68599020, aView=0x683d8f00) at /home/emilio/src/moz/gecko/layout/generic/nsFrame.cpp:7057 #2 0x00005cc60e77258a in nsCSSFrameConstructor::ConstructRootFrame() (this=0xc72c715e00) at /home/emilio/src/moz/gecko/layout/base/nsCSSFrameConstructor.cpp:2424 #3 0x00005cc60e7342f5 in mozilla::PresShell::Initialize() (this=0x6830e000) at /home/emilio/src/moz/gecko/layout/base/PresShell.cpp:1758 #4 0x00005cc60c9fb02a in nsContentSink::StartLayout(bool) (this=<optimized out>, aIgnorePendingSheets=<optimized out>) at /home/emilio/src/moz/gecko/dom/base/nsContentSink.cpp:1160 #5 0x00005cc60e2c1581 in nsXMLContentSink::HandleStartElement(char16_t const*, char16_t const**, unsigned int, unsigned int, unsigned int, bool) (this=<optimized out>, aName=<optimized out>, aAtts=0x6fde8200, aAttsCount=<optimized out>, aLineNumber=3, aColumnNumber=<optimized out>, aInterruptable=true) at /home/emilio/src/moz/gecko/dom/xml/nsXMLContentSink.cpp:982 #6 0x00005cc60e2c17d7 in non-virtual thunk to nsXMLContentSink::HandleStartElement(char16_t const*, char16_t const**, unsigned int, unsigned int, unsigned int) () at /home/emilio/src/moz/gecko/dom/xml/nsXMLContentSink.cpp:889 #7 0x00005cc60c360307 in nsExpatDriver::HandleStartElement(void*, char16_t const*, char16_t const**) (aUserData=0x224f650d0cc0, aName=0x685aef20 u"http://www.w3.org/2000/svg\xffffdesc", aAtts=0x6fde8200) at /home/emilio/src/moz/gecko/parser/htmlparser/nsExpatDriver.cpp:293 #8 0x00005cc60ee91cea in doContent (parser=0xc72c70f800, startTagLevel=0, enc=<optimized out>, s=<optimized out>, end=0x5bbd31af5020 "\344\344\344", <incomplete sequence \344>, nextPtr=0x7ffca2653288, haveMore=1 '\001') at /home/emilio/src/moz/gecko/parser/expat/lib/xmlparse.c:2872 #9 0x00005cc60ee90059 in contentProcessor (parser=0xc72c70f800, start=0xffffffe6 <error: Cannot access memory at address 0xffffffe6>, end=0xc72c511360 "", endPtr=0x1) at /home/emilio/src/moz/gecko/parser/expat/lib/xmlparse.c:2528 #10 0x00005cc60ee8f8d5 in doProlog (parser=<optimized out>, enc=0x5cc612ce0930 <little2_encoding_ns>, s=0x5bbd31ab508e "<", end=0x5bbd31af5020 "\344\344\344", <incomplete sequence \344>, tok=<optimized out>, next=<optimized out>, nextPtr=0x7ffca2653288, haveMore=1 '\001', allowClosingDoctype=1 '\001') at /home/emilio/src/moz/gecko/parser/expat/lib/xmlparse.c:4591 #11 0x00005cc60ee8d86e in prologProcessor (parser=0xc72c70f800, s=0x5bbd31ab5020 "<", end=0x5bbd31af5020 "\344\344\344", <incomplete sequence \344>, nextPtr=0x7ffca2653288) at /home/emilio/src/moz/gecko/parser/expat/lib/xmlparse.c:4311 #12 0x00005cc60ee8cf45 in MOZ_XML_Parse (parser=0xc72c70f800, s=0x5bbd31ab5020 "<", len=262144, isFinal=0) at /home/emilio/src/moz/gecko/parser/expat/lib/xmlparse.c:1894 #13 0x00005cc60c3627bc in nsExpatDriver::ParseBuffer(char16_t const*, unsigned int, bool, unsigned int*) (this=0x224f650d0cc0, aBuffer=0x5bbd31ab5020 u"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<svg height=\"2970\" width=\"2100\" viewBox=\"0 0 2100 2970\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlin"..., aLength=131072, aIsFinal=false, aConsumed=<optimized out>) at /home/emilio/src/moz/gecko/parser/htmlparser/nsExpatDriver.cpp:875 #14 0x00005cc60c362c91 in nsExpatDriver::ConsumeToken(nsScanner&, bool&) (this=<optimized out>, aScanner=..., aFlushTokens=<optimized out>) at /home/emilio/src/moz/gecko/parser/htmlparser/nsExpatDriver.cpp:970 #15 0x00005cc60c3666a8 in nsParser::Tokenize(bool) (this=0x224f65038e80, aIsFinalChunk=false) at /home/emilio/src/moz/gecko/parser/htmlparser/nsParser.cpp:1410 #16 0x00005cc60c36595e in nsParser::ResumeParse(bool, bool, bool) (this=0x224f65038e80, allowIteration=true, aIsFinalChunk=false, aCanInterrupt=<optimized out>) at /home/emilio/src/moz/gecko/parser/htmlparser/nsParser.cpp:961 #17 0x00005cc60c366c86 in nsParser::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int) (this=0x224f65038e80, request=<optimized out>, pIStream=0x6fdfc430, sourceOffset=<optimized out>, aLength=131072) at /home/emilio/src/moz/gecko/parser/htmlparser/nsParser.cpp:1317 #18 0x00005cc60c897cc2 in nsObjectLoadingContent::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int) (this=<optimized out>, aRequest=0x68483080, aInputStream=0x6fdfc430, aOffset=0, aCount=131072) at /home/emilio/src/moz/gecko/dom/base/nsObjectLoadingContent.cpp:1055 #19 0x00005cc60b9d18f8 in mozilla::net::HttpChannelChild::DoOnDataAvailable(nsIRequest*, nsISupports*, nsIInputStream*, unsigned long, unsigned int) (this=0x68483000, aRequest=0x68483080, aContext=<optimized out>, aStream=0x6fdfc430, aOffset=0, aCount=743510880) at /home/emilio/src/moz/gecko/netwerk/protocol/http/HttpChannelChild.cpp:968 #20 0x00005cc60b9d5cbf in mozilla::net::HttpChannelChild::OnTransportAndData(nsresult const&, nsresult const&, unsigned long const&, unsigned int const&, nsTString<char> const&) (this=0x68483000, aChannelStatus=<optimized out>, aTransportStatus=@0x683be5bc: -2142568440, aOffset=<optimized out>, aCount=<optimized out>, aData=...) at /home/emilio/src/moz/gecko/netwerk/protocol/http/HttpChannelChild.cpp:867 #21 0x00005cc60badb535 in mozilla::net::ChannelEventQueue::FlushQueue() (this=0xc72ce2cae0) at /home/emilio/src/moz/gecko/netwerk/ipc/ChannelEventQueue.cpp:90 #22 0x00005cc60b976fda in mozilla::net::ChannelEventQueue::MaybeFlushQueue() (this=0xc72ce2cae0) at /home/emilio/src/moz/gecko/obj-debug/dist/include/mozilla/net/ChannelEventQueue.h:350 #23 0x00005cc60baec442 in mozilla::net::ChannelEventQueue::CompleteResume() (this=0xc72ce2cae0) at /home/emilio/src/moz/gecko/obj-debug/dist/include/mozilla/net/ChannelEventQueue.h:329 #24 mozilla::net::ChannelEventQueue::ResumeInternal()::CompleteResumeRunnable::Run() (this=<optimized out>) at /home/emilio/src/moz/gecko/netwerk/ipc/ChannelEventQueue.cpp:148 #25 0x00005cc60b53d4f1 in mozilla::SchedulerGroup::Runnable::Run() (this=0x685b0200) at /home/emilio/src/moz/gecko/xpcom/threads/SchedulerGroup.cpp:282 #26 0x00005cc60b54ff80 in nsThread::ProcessNextEvent(bool, bool*) (this=0x3dd7f4f3020, aMayWait=<optimized out>, aResult=0x7ffca2653ea7) at /home/emilio/src/moz/gecko/xpcom/threads/nsThread.cpp:1220 #27 0x00005cc60b552f0d in NS_ProcessNextEvent(nsIThread*, bool) (aThread=0x68599020, aMayWait=true) at /home/emilio/src/moz/gecko/xpcom/threads/nsThreadUtils.cpp:481 The parent view may not be set properly if the frame is not current by the time it is created. For example in this case the parent for the root view is non-null and comes from the following MakeWindow call: #0 nsDocumentViewer::MakeWindow(nsSize const&, nsView*) (this=0xc72ca72cd0, aSize=..., aContainerView=0x683ba500) at /home/emilio/src/moz/gecko/layout/base/nsDocumentViewer.cpp:2368 #1 0x00005cc60e789b50 in nsDocumentViewer::InitInternal(nsIWidget*, nsISupports*, mozilla::dom::WindowGlobalChild*, mozilla::gfx::IntRectTyped<mozilla::gfx::UnknownUnits> const&, bool, bool, bool) (this=0xc72ca72cd0, aParentWidget=<optimized out>, aState=0x0, aActor=0x0, aBounds=..., aDoCreation=true, aNeedMakeCX=<optimized out>, aForceSetNewDocument=<optimized out>) at /home/emilio/src/moz/gecko/layout/base/nsDocumentViewer.cpp:933 #2 0x00005cc60e789959 in nsDocumentViewer::Init(nsIWidget*, mozilla::gfx::IntRectTyped<mozilla::gfx::UnknownUnits> const&, mozilla::dom::WindowGlobalChild*) (this=0xc72ca72cd0, aParentWidget=0x7ffca2651020, aBounds=..., aActor=0x7f6216725c00) at /home/emilio/src/moz/gecko/layout/base/nsDocumentViewer.cpp:762 #3 0x00005cc60f4f584f in nsDocShell::SetupNewViewer(nsIContentViewer*, mozilla::dom::WindowGlobalChild*) (this=0x684db000, aNewViewer=<optimized out>, aWindowActor=<optimized out>) at /home/emilio/src/moz/gecko/docshell/base/nsDocShell.cpp:8017 #4 0x00005cc60f4f5204 in nsDocShell::Embed(nsIContentViewer*, mozilla::dom::WindowGlobalChild*) (this=0x684db000, aContentViewer=0x7ffca2651020, aWindowActor=0x683ba500) at /home/emilio/src/moz/gecko/docshell/base/nsDocShell.cpp:5745 #5 0x00005cc60f4dbc7b in nsDocShell::CreateContentViewer(nsTSubstring<char> const&, nsIRequest*, nsIStreamListener**) (this=0x684db000, aContentType=..., aRequest=0x68483080, aContentHandler=<optimized out>) at /home/emilio/src/moz/gecko/docshell/base/nsDocShell.cpp:7819 #6 0x00005cc60f4dab99 in nsDSURIContentListener::DoContent(nsTSubstring<char> const&, bool, nsIRequest*, nsIStreamListener**, bool*) (this=0x683056a0, aContentType=..., aIsContentPreferred=<optimized out>, aRequest=0x68483080, aContentHandler=0xc72c5e8608, aAbortProcess=0x7ffca265139f) at /home/emilio/src/moz/gecko/docshell/base/nsDSURIContentListener.cpp:181 #7 0x00005cc60c2fd8f5 in nsDocumentOpenInfo::TryContentListener(nsIURIContentListener*, nsIChannel*) (this=0xc72c5e85e0, aListener=0x683056a0, aChannel=<optimized out>) at /home/emilio/src/moz/gecko/uriloader/base/nsURILoader.cpp:632 #8 0x00005cc60c2fccd1 in nsDocumentOpenInfo::DispatchContent(nsIRequest*, nsISupports*) (this=0xc72c5e85e0, request=0x68483080, aCtxt=<optimized out>) at /home/emilio/src/moz/gecko/uriloader/base/nsURILoader.cpp:313 #9 0x00005cc60c2fc5aa in nsDocumentOpenInfo::OnStartRequest(nsIRequest*) (this=<optimized out>, request=0x68483080) at /home/emilio/src/moz/gecko/uriloader/base/nsURILoader.cpp:191 #10 0x00005cc60c8975c4 in nsObjectLoadingContent::LoadObject(bool, bool, nsIRequest*) (this=0x4b1b3938b6a8, aNotify=<optimized out>, aForceLoad=<optimized out>, aLoadingChannel=0x68483080) at /home/emilio/src/moz/gecko/dom/base/nsObjectLoadingContent.cpp:2218 #11 0x00005cc60c89681f in nsObjectLoadingContent::OnStartRequest(nsIRequest*) (this=0x4b1b3938b6a8, aRequest=0x68483080) at /home/emilio/src/moz/gecko/dom/base/nsObjectLoadingContent.cpp:1006 #12 0x00005cc60b9d1020 in mozilla::net::HttpChannelChild::DoOnStartRequest(nsIRequest*, nsISupports*) (this=0x68483000, aRequest=0x68483080, aContext=<optimized out>) at /home/emilio/src/moz/gecko/netwerk/protocol/http/HttpChannelChild.cpp:708 #13 0x00005cc60b9d481b in mozilla::net::HttpChannelChild::OnStartRequest(nsresult const&, mozilla::net::nsHttpResponseHead const&, bool const&, mozilla::net::nsHttpHeaderArray const&, mozilla::net::ParentLoadInfoForwarderArgs const&, bool const&, bool const&, bool const&, unsigned long const&, int const&, unsigned int const&, nsTString<char> const&, nsTString<char> const&, mozilla::net::NetAddr const&, mozilla::net::NetAddr const&, unsigned int const&, nsTString<char> const&, long const&, bool const&, bool const&, bool const&, mozilla::net::ResourceTimingStructArgs const&, bool const&, mozilla::Maybe<unsigned int> const&, bool const&, nsILoadInfo::CrossOriginOpenerPolicy const&) However, even though aContainerView is non-null, the view is incorrect, it's the view for the _old_ frame. The view parent/child relationship gets cleared properly in: #1 0x00005cc60e8e82bf in BeginSwapDocShellsForViews (aSibling=0x0) at /home/emilio/src/moz/gecko/layout/generic/nsSubDocumentFrame.cpp:1027 warning: Source file is more recent than executable. #2 0x00005cc60e8e810b in nsSubDocumentFrame::DestroyFrom (this=0x6cd04eaa45a8, aDestructRoot=0x6cd04eaa45a8, aPostDestroyData=...) at /home/emilio/src/moz/gecko/layout/generic/nsSubDocumentFrame.cpp:943 #3 0x00005cc60e7b71a3 in nsIFrame::Destroy (this=0x6cd04eaa45a8) at /home/emilio/src/moz/gecko/layout/generic/nsIFrame.h:657 #4 0x00005cc60e80baac in nsBlockFrame::RemoveFrame (this=0x4b1b39362d88, aListID=<optimized out>, aOldFrame=0x6cd04eaa45a8) at /home/emilio/src/moz/gecko/layout/generic/nsBlockFrame.cpp:5597 #5 0x00005cc60e8df29f in nsPlaceholderFrame::DestroyFrom (this=0x4b1b39363240, aDestructRoot=0x4b1b39363240, aPostDestroyData=...) at /home/emilio/src/moz/gecko/layout/generic/nsPlaceholderFrame.cpp:181 #6 0x00005cc60e80cf19 in nsBlockFrame::DoRemoveFrameInternal (this=<optimized out>, aDeletedFrame=0x0, aFlags=<optimized out>, aPostDestroyData=...) at /home/emilio/src/moz/gecko/layout/generic/nsBlockFrame.cpp:6265 #7 0x00005cc60e82d947 in nsBlockFrame::DoRemoveFrame (this=0x4b1b39362d88, aDeletedFrame=0x683d8f00, aFlags=244338087) at /home/emilio/src/moz/gecko/layout/generic/nsBlockFrame.h:528 #8 0x00005cc60e80ba3a in nsBlockFrame::RemoveFrame (this=0x4b1b39362d88, aListID=<optimized out>, aOldFrame=0x4b1b39363240) at /home/emilio/src/moz/gecko/layout/generic/nsBlockFrame.cpp:5581 #9 0x00005cc60e77fd5c in nsCSSFrameConstructor::ContentRemoved (this=<optimized out>, aChild=0x4b1b3938b600, aOldNextSibling=<optimized out>, aFlags=<optimized out>) at /home/emilio/src/moz/gecko/layout/base/nsCSSFrameConstructor.cpp:7583 #10 0x00005cc60e779a35 in nsCSSFrameConstructor::RecreateFramesForContent (this=0x6fdf9800, aContent=0x4b1b3938b600, aInsertionKind=nsCSSFrameConstructor::InsertionKind::Sync) at /home/emilio/src/moz/gecko/layout/base/nsCSSFrameConstructor.cpp:8593 #11 0x00005cc60e751745 in mozilla::RestyleManager::ProcessRestyledFrames (this=<optimized out>, aChangeList=...) at /home/emilio/src/moz/gecko/layout/base/RestyleManager.cpp:1484 But the temporary state is stored in the _old_ frame-loader, so when we create the new frame, we get to nsSubDocumentFrame::Init, and find nothing, and thus go through nsFrameLoader::Show. But we do have a pres-shell, and nsFrameLoader::Show just early-returns then, and thus we end up with a detached pres shell which is not hooked to the view tree and thus not painted... So there are multiple potential fixes. First (this is the approach this patch takes): * Make nsHideViewer not fail to hide a presentation when the frame loader has changed. This is not an issue per se, but leaves stale views / etc living for too long which is not nice. * Fix up the Show() code path to handle this case properly by parenting the pres-shell and initializing the docshell properly. Second potential fix would be to store the temporary state somewhere else than the frame loader (like the element). This may be a less invasive change somehow, but it looks pretty fishy to me, and not particularly better... Terribly sorry about the lack of test-case, but this is racy as crazy and I had a lot of trouble to even reproduce it in a debug build. This needs the PresShell creation for the subdocument to happen right after setting .data on the <object>, but before processing its reframe. Differential Revision: https://phabricator.services.mozilla.com/D69487
cfallin
added a commit
to cfallin/gecko-dev
that referenced
this pull request
Feb 29, 2024
…isobject pbl: Fix GuardDynamicSlotIsSpecificObject
moz-v2v-gh
pushed a commit
that referenced
this pull request
May 20, 2025
…oder,lsalzman
```
==1410==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 2352 byte(s) in 49 object(s) allocated from:
#0 0x562318d9d2df in malloc /builds/worker/fetches/llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:68:3
#1 0x7f169f73a499 in ralloc_size /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/util/ralloc.c:118:18
#2 0x7f169f73a499 in ralloc_context /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/util/ralloc.c:105:11
#3 0x7f169f75f399 in mesa_cache_db_open /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/util/mesa_cache_db.c:675:18
#4 0x7f169f741c99 in mesa_cache_db_multipart_init_part_locked /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/util/mesa_cache_db_multipart.c:60:16
#5 0x7f169f741c99 in mesa_cache_db_multipart_init_part /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/util/mesa_cache_db_multipart.c:93:10
#6 0x7f169f741f16 in mesa_cache_db_multipart_init_part /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/util/mesa_cache_db_multipart.c:89:7
#7 0x7f169f741f16 in mesa_cache_db_multipart_read_entry /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/util/mesa_cache_db_multipart.c:136:12
#8 0x7f169f733f9d in disk_cache_db_load_item /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/util/disk_cache_os.c:1167:23
#9 0x7f169f73238d in disk_cache_get /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/util/disk_cache.c:605:16
#10 0x7f169fafc569 in shader_cache_read_program_metadata(gl_context*, gl_shader_program*) /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/compiler/glsl/shader_cache.cpp:214:48
#11 0x7f169fae839b in link_shaders(gl_context*, gl_shader_program*) /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/compiler/glsl/linker.cpp:1766:42
#12 0x7f169fa509aa in st_link_shader /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/mesa/state_tracker/st_glsl_to_nir.cpp:984:22
#13 0x7f169fa05e8e in link_program /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/mesa/main/shaderapi.c:1337:4
#14 0x7f169fa05e8e in link_program_error /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/mesa/main/shaderapi.c:1446:4
#15 0x7f16e74f1ae6 in webrender::device::gl::Device::link_program::h04ace192966fed71 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/device/gl.rs:2518:13
#16 0x7f16e74fc25f in webrender::device::gl::Device::create_program_linked::h2ec223b25e78d716 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/device/gl.rs:3035:9
#17 0x7f16e75161b3 in webrender::renderer::gpu_cache::GpuCacheTexture::new::hf7ba56012a504794 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/gpu_cache.rs:165:27
#18 0x7f16e7528446 in webrender::renderer::init::create_webrender_instance::h559ddbaf7f9a386b /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/init.rs:517:29 #19 0x7f16e76e8d8f in wr_window_new /builds/worker/checkouts/gecko/gfx/webrender_bindings/src/bindings.rs:2068:36
#20 0x7f16d8d6d980 in mozilla::wr::NewRenderer::Run(mozilla::wr::RenderThread&, mozilla::wr::WrWindowId) /builds/worker/checkouts/gecko/gfx/webrender_bindings/WebRenderAPI.cpp:134:10
#21 0x7f16d8d2fbfa in mozilla::wr::RenderThread::RunEvent(mozilla::wr::WrWindowId, mozilla::UniquePtr<mozilla::wr::RendererEvent, mozilla::DefaultDelete<mozilla::wr::RendererEvent>>, bool) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:755:11
#22 0x7f16d8d4b478 in operator()<StoreCopyPassByConstLRef<mozilla::wr::WrWindowId> &, StoreCopyPassByRRef<mozilla::UniquePtr<mozilla::wr::RendererEvent, mozilla::DefaultDelete<mozilla::wr::RendererEvent> > > &, StoreCopyPassByConstLRef<bool> &> /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1085:18
#23 0x7f16d8d4b478 in __invoke_impl<void, (lambda at /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1084:9), StoreCopyPassByConstLRef<mozilla::wr::WrWindowId> &, StoreCopyPassByRRef<mozilla::UniquePtr<mozilla::wr::RendererEvent, mozilla::DefaultDelete<mozilla::wr::RendererEvent> > > &, StoreCopyPassByConstLRef<bool> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:60:14
#24 0x7f16d8d4b478 in __invoke<(lambda at /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1084:9), StoreCopyPassByConstLRef<mozilla::wr::WrWindowId> &, StoreCopyPassByRRef<mozilla::UniquePtr<mozilla::wr::RendererEvent, mozilla::DefaultDelete<mozilla::wr::RendererEvent> > > &, StoreCopyPassByConstLRef<bool> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:95:14
#25 0x7f16d8d4b478 in __apply_impl<(lambda at /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1084:9), std::tuple<StoreCopyPassByConstLRef<mozilla::wr::WrWindowId>, StoreCopyPassByRRef<mozilla::UniquePtr<mozilla::wr::RendererEvent, mozilla::DefaultDelete<mozilla::wr::RendererEvent> > >, StoreCopyPassByConstLRef<bool> > &, 0UL, 1UL, 2UL> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/tuple:1678:14
#26 0x7f16d8d4b478 in apply<(lambda at /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1084:9), std::tuple<StoreCopyPassByConstLRef<mozilla::wr::WrWindowId>, StoreCopyPassByRRef<mozilla::UniquePtr<mozilla::wr::RendererEvent, mozilla::DefaultDelete<mozilla::wr::RendererEvent> > >, StoreCopyPassByConstLRef<bool> > &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/tuple:1687:14
#27 0x7f16d8d4b478 in apply<mozilla::wr::RenderThread, void (mozilla::wr::RenderThread::*)(mozilla::wr::WrWindowId, mozilla::UniquePtr<mozilla::wr::RendererEvent, mozilla::DefaultDelete<mozilla::wr::RendererEvent> >, bool)> /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1083:12
#28 0x7f16d8d4b478 in mozilla::detail::RunnableMethodImpl<mozilla::wr::RenderThread*, void (mozilla::wr::RenderThread::*)(mozilla::wr::WrWindowId, mozilla::UniquePtr<mozilla::wr::RendererEvent, mozilla::DefaultDelete<mozilla::wr::RendererEvent>>, bool), true, (mozilla::RunnableKind)0, mozilla::wr::WrWindowId, mozilla::UniquePtr<mozilla::wr::RendererEvent, mozilla::DefaultDelete<mozilla::wr::RendererEvent>>&&, bool>::Run() /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1134:13
#29 0x7f16d607b26c in nsThread::ProcessNextEvent(bool, bool*) /builds/worker/checkouts/gecko/xpcom/threads/nsThread.cpp:1153:16
#30 0x7f16d6085848 in NS_ProcessNextEvent(nsIThread*, bool) /builds/worker/checkouts/gecko/xpcom/threads/nsThreadUtils.cpp:480:10
#31 0x7f16d74ee3fa in mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate*) /builds/worker/checkouts/gecko/ipc/glue/MessagePump.cpp:329:5
#32 0x7f16d73fc7c4 in RunInternal /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:369:10
#33 0x7f16d73fc7c4 in RunHandler /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:362:3
#34 0x7f16d73fc7c4 in MessageLoop::Run() /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:344:3
#35 0x7f16d60740ae in nsThread::ThreadFunc(void*) /builds/worker/checkouts/gecko/xpcom/threads/nsThread.cpp:366:10
#36 0x7f16f0deb74b in _pt_root /builds/worker/checkouts/gecko/nsprpub/pr/src/pthreads/ptthread.c:191:3
#37 0x562318d99546 in asan_thread_start(void*) /builds/worker/fetches/llvm-project/compiler-rt/lib/asan/asan_interceptors.cpp:239:28
```
Differential Revision: https://phabricator.services.mozilla.com/D250035
moz-v2v-gh
pushed a commit
that referenced
this pull request
May 20, 2025
… r=decoder
Silences errors like:
```
WARNING: ThreadSanitizer: data race (pid=1445)
Write of size 1 at 0x721c001edc68 by thread T37 (mutexes: write M0):
#0 pthread_mutex_destroy...
.../builds/worker/fetches/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1344:3 (firefox-bin+0xc509e) (BuildId: 74918b8d36a8ceb86eaccd2c7274bee2f575320d)
#1 lp_fence_destroy /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/gallium/drivers/llvmpipe/lp_fence.c:78:4 (libgallium-24.2.8-1ubuntu1~24.04.1.so+0x7ec938) (BuildId: 48f1fa5b9817cc9b1a495564c09ffd548eb36a28)
#2 webrender::renderer::Renderer::draw_frame::h06d982392aac6b6c /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:5054:17 (libxul.so+0xd28a4b6) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#3 webrender::renderer::Renderer::render_impl::h7c8fba6c7d5b5f78 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:1599:17 (libxul.so+0xd2770d3) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#4 webrender::renderer::Renderer::render::h514d05ab824d7d94 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:1283:30 (libxul.so+0xd3004c4) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#5 wr_renderer_render /builds/worker/checkouts/gecko/gfx/webrender_bindings/src/bindings.rs:649:11 (libxul.so+0xd3004c4)
#6 mozilla::wr::RendererOGL::UpdateAndRender(mozilla::Maybe<mozilla::gfx::IntSizeTyped<mozilla::gfx::UnknownUnits>> const&, mozilla::Maybe<mozilla::wr::ImageFormat> const&, mozilla::Maybe<mozilla::Range<unsigned char>> const&, bool*, mozilla::wr::FrameReadyParams const&, mozilla::wr::RendererStats*) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RendererOGL.cpp:220:19 (libxul.so+0x51ef293) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#7 mozilla::wr::RendererOGL::UpdateAndRender(mozilla::Maybe<mozilla::gfx::IntSizeTyped<mozilla::gfx::UnknownUnits>> const&, mozilla::Maybe<mozilla::wr::ImageFormat> const&, mozilla::Maybe<mozilla::Range<unsigned char>> const&, bool*, mozilla::wr::FrameReadyParams const&, mozilla::wr::RendererStats*) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RendererOGL.cpp:220:19 (libxul.so+0x51ef293) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#8 mozilla::wr::RenderThread::UpdateAndRender(mozilla::wr::WrWindowId, mozilla::layers::BaseTransactionId<mozilla::VsyncIdType> const&, mozilla::TimeStamp const&, mozilla::wr::FrameReadyParams const&, mozilla::Maybe<mozilla::gfx::IntSizeTyped<mozilla::gfx::UnknownUnits>> const&, mozilla::Maybe<mozilla::wr::ImageFormat> const&, mozilla::Maybe<mozilla::Range<unsigned char>> const&, mozilla::wr::RendererStats*, bool*) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:853:31 (libxul.so+0x51edfe0) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#9 mozilla::wr::RenderThread::HandleFrameOneDocInner(mozilla::wr::WrWindowId, mozilla::wr::FrameReadyParams const&, bool, mozilla::Maybe<mozilla::wr::FramePublishId>) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:667:3 (libxul.so+0x51ed83a) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#10 mozilla::wr::RenderThread::HandleFrameOneDoc(mozilla::wr::WrWindowId, mozilla::wr::FrameReadyParams const&, bool, mozilla::Maybe<mozilla::wr::FramePublishId>) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:614:3 (libxul.so+0x51eca69) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#11 WrNotifierEvent_HandleNewFrameReady /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:575:3 (libxul.so+0x51ec71f) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#12 mozilla::wr::RenderThread::HandleWrNotifierEvents(mozilla::wr::WrWindowId) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:536:9 (libxul.so+0x51ec71f)
#13 operator()<StoreRefPtrPassByPtr<mozilla::net::ConnectionData> &> /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1085:18 (libxul.so+0x3b2276b) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#14 __invoke_impl<nsresult, (lambda at /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1084:9), StoreRefPtrPassByPtr<mozilla::net::ConnectionData> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:60:14 (libxul.so+0x3b2276b)
#15 __invoke<(lambda at /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1084:9), StoreRefPtrPassByPtr<mozilla::net::ConnectionData> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:95:14 (libxul.so+0x3b2276b)
#16 __apply_impl<(lambda at /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1084:9), std::tuple<StoreRefPtrPassByPtr<mozilla::net::ConnectionData> > &, 0UL> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/tuple:1678:14 (libxul.so+0x3b2276b)
#17 apply<(lambda at /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1084:9), std::tuple<StoreRefPtrPassByPtr<mozilla::net::ConnectionData> > &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/tuple:1687:14 (libxul.so+0x3b2276b)
#18 apply<mozilla::net::Dashboard, nsresult (mozilla::net::Dashboard::*)(mozilla::net::ConnectionData *)> /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1083:12 (libxul.so+0x3b2276b)
#19 mozilla::detail::RunnableMethodImpl<mozilla::ChildProfilerController*, void (mozilla::ChildProfilerController::*)(mozilla::ProfileAndAdditionalInformation*), true, (mozilla::RunnableKind)0, mozilla::ProfileAndAdditionalInformation*>::Run() /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1134:13 (libxul.so+0x3b2276b)
#20 nsThread::ProcessNextEvent(bool, bool*) /builds/worker/checkouts/gecko/xpcom/threads/nsThread.cpp:1153:16 (libxul.so+0x3969ce4) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#21 NS_ProcessNextEvent(nsIThread*, bool) /builds/worker/checkouts/gecko/xpcom/threads/nsThreadUtils.cpp:480:10 (libxul.so+0x3970004) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#22 mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate*) /builds/worker/checkouts/gecko/ipc/glue/MessagePump.cpp:329:5 (libxul.so+0x44b6e68) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#23 RunInternal /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:369:10 (libxul.so+0x4435ff8) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#24 RunHandler /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:362:3 (libxul.so+0x4435ff8)
#25 MessageLoop::Run() /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:344:3 (libxul.so+0x4435ff8)
#26 nsThread::ThreadFunc(void*) /builds/worker/checkouts/gecko/xpcom/threads/nsThread.cpp:366:10 (libxul.so+0x3965960) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#27 _pt_root /builds/worker/checkouts/gecko/nsprpub/pr/src/pthreads/ptthread.c:191:3 (libnspr4.so+0x4b0c8) (BuildId: 547b6ba24355d61349081fac5945ac4a423606a2)
Previous atomic read of size 1 at 0x721c001edc68 by thread T50:
#0 pthread_mutex_lock /builds/worker/fetches/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1353:3 (firefox-bin+0xc521e) (BuildId: 74918b8d36a8ceb86eaccd2c7274bee2f575320d)
#1 mtx_lock /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/c11/impl/threads_posix.c:202:13 (libgallium-24.2.8-1ubuntu1~24.04.1.so+0x1504ec) (BuildId: 48f1fa5b9817cc9b1a495564c09ffd548eb36a28)
Location is heap block of size 112 at 0x721c001edc60 allocated by thread T37:
#0 calloc /builds/worker/fetches/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:686:5 (firefox-bin+0xc1c2b) (BuildId: 74918b8d36a8ceb86eaccd2c7274bee2f575320d)
#1 lp_fence_create /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/gallium/drivers/llvmpipe/lp_fence.c:51:29 (libgallium-24.2.8-1ubuntu1~24.04.1.so+0x7ec8dc) (BuildId: 48f1fa5b9817cc9b1a495564c09ffd548eb36a28)
#2 webrender::device::gl::Device::draw_nonindexed_points::h4101a4b71cfd626e /builds/worker/checkouts/gecko/gfx/wr/webrender/src/device/gl.rs:3691:9 (libxul.so+0xce27257) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#3 webrender::renderer::gpu_cache::GpuCacheTexture::flush::hbc05ef381b20bf94 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/gpu_cache.rs:369:17 (libxul.so+0xce27257)
#4 webrender::renderer::gpu_cache::_$LT$impl$u20$webrender..renderer..Renderer$GT$::update_gpu_cache::h7eac41b9b190521c /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/gpu_cache.rs:477:28 (libxul.so+0xce27257)
#5 webrender::renderer::gpu_cache::_$LT$impl$u20$webrender..renderer..Renderer$GT$::prepare_gpu_cache::hfa7e1d1ec0fb7110 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/gpu_cache.rs:511:9 (libxul.so+0xd276e5e) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#6 webrender::renderer::Renderer::render_impl::h7c8fba6c7d5b5f78 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:1588:15 (libxul.so+0xd276e5e)
#7 webrender::renderer::Renderer::render::h514d05ab824d7d94 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:1283:30 (libxul.so+0xd3004c4) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#8 wr_renderer_render /builds/worker/checkouts/gecko/gfx/webrender_bindings/src/bindings.rs:649:11 (libxul.so+0xd3004c4)
#9 webrender::renderer::Renderer::render::h514d05ab824d7d94 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:1283:30 (libxul.so+0xd3004c4) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#10 wr_renderer_render /builds/worker/checkouts/gecko/gfx/webrender_bindings/src/bindings.rs:649:11 (libxul.so+0xd3004c4)
#11 mozilla::wr::RendererOGL::UpdateAndRender(mozilla::Maybe<mozilla::gfx::IntSizeTyped<mozilla::gfx::UnknownUnits>> const&, mozilla::Maybe<mozilla::wr::ImageFormat> const&, mozilla::Maybe<mozilla::Range<unsigned char>> const&, bool*, mozilla::wr::FrameReadyParams const&, mozilla::wr::RendererStats*) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RendererOGL.cpp:220:19 (libxul.so+0x51ef293) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#12 mozilla::wr::RendererOGL::UpdateAndRender(mozilla::Maybe<mozilla::gfx::IntSizeTyped<mozilla::gfx::UnknownUnits>> const&, mozilla::Maybe<mozilla::wr::ImageFormat> const&, mozilla::Maybe<mozilla::Range<unsigned char>> const&, bool*, mozilla::wr::FrameReadyParams const&, mozilla::wr::RendererStats*) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RendererOGL.cpp:220:19 (libxul.so+0x51ef293) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#13 mozilla::wr::RenderThread::UpdateAndRender(mozilla::wr::WrWindowId, mozilla::layers::BaseTransactionId<mozilla::VsyncIdType> const&, mozilla::TimeStamp const&, mozilla::wr::FrameReadyParams const&, mozilla::Maybe<mozilla::gfx::IntSizeTyped<mozilla::gfx::UnknownUnits>> const&, mozilla::Maybe<mozilla::wr::ImageFormat> const&, mozilla::Maybe<mozilla::Range<unsigned char>> const&, mozilla::wr::RendererStats*, bool*) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:853:31 (libxul.so+0x51edfe0) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#14 mozilla::wr::RenderThread::HandleFrameOneDocInner(mozilla::wr::WrWindowId, mozilla::wr::FrameReadyParams const&, bool, mozilla::Maybe<mozilla::wr::FramePublishId>) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:667:3 (libxul.so+0x51ed83a) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#15 mozilla::wr::RenderThread::HandleFrameOneDoc(mozilla::wr::WrWindowId, mozilla::wr::FrameReadyParams const&, bool, mozilla::Maybe<mozilla::wr::FramePublishId>) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:614:3 (libxul.so+0x51eca69) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#16 WrNotifierEvent_HandleNewFrameReady /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:575:3 (libxul.so+0x51ec71f) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#17 mozilla::wr::RenderThread::HandleWrNotifierEvents(mozilla::wr::WrWindowId) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:536:9 (libxul.so+0x51ec71f)
#18 operator()<StoreRefPtrPassByPtr<mozilla::net::ConnectionData> &> /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1085:18 (libxul.so+0x3b2276b) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#19 __invoke_impl<nsresult, (lambda at /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1084:9), StoreRefPtrPassByPtr<mozilla::net::ConnectionData> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:60:14 (libxul.so+0x3b2276b)
#20 __invoke<(lambda at /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1084:9), StoreRefPtrPassByPtr<mozilla::net::ConnectionData> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:95:14 (libxul.so+0x3b2276b)
#21 __apply_impl<(lambda at /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1084:9), std::tuple<StoreRefPtrPassByPtr<mozilla::net::ConnectionData> > &, 0UL> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/tuple:1678:14 (libxul.so+0x3b2276b)
#22 apply<(lambda at /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1084:9), std::tuple<StoreRefPtrPassByPtr<mozilla::net::ConnectionData> > &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/tuple:1687:14 (libxul.so+0x3b2276b)
#23 apply<mozilla::net::Dashboard, nsresult (mozilla::net::Dashboard::*)(mozilla::net::ConnectionData *)> /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1083:12 (libxul.so+0x3b2276b)
#24 mozilla::detail::RunnableMethodImpl<mozilla::ChildProfilerController*, void (mozilla::ChildProfilerController::*)(mozilla::ProfileAndAdditionalInformation*), true, (mozilla::RunnableKind)0, mozilla::ProfileAndAdditionalInformation*>::Run() /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1134:13 (libxul.so+0x3b2276b)
#25 nsThread::ProcessNextEvent(bool, bool*) /builds/worker/checkouts/gecko/xpcom/threads/nsThread.cpp:1153:16 (libxul.so+0x3969ce4) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#26 NS_ProcessNextEvent(nsIThread*, bool) /builds/worker/checkouts/gecko/xpcom/threads/nsThreadUtils.cpp:480:10 (libxul.so+0x3970004) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#27 mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate*) /builds/worker/checkouts/gecko/ipc/glue/MessagePump.cpp:329:5 (libxul.so+0x44b6e68) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#28 RunInternal /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:369:10 (libxul.so+0x4435ff8) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#29 RunHandler /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:362:3 (libxul.so+0x4435ff8)
#30 MessageLoop::Run() /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:344:3 (libxul.so+0x4435ff8)
#31 nsThread::ThreadFunc(void*) /builds/worker/checkouts/gecko/xpcom/threads/nsThread.cpp:366:10 (libxul.so+0x3965960) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#32 _pt_root /builds/worker/checkouts/gecko/nsprpub/pr/src/pthreads/ptthread.c:191:3 (libnspr4.so+0x4b0c8) (BuildId: 547b6ba24355d61349081fac5945ac4a423606a2)
Mutex M0 (0x726400101a98) created at:
#0 pthread_mutex_init /builds/worker/fetches/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1327:3 (firefox-bin+0xc4ee3) (BuildId: 74918b8d36a8ceb86eaccd2c7274bee2f575320d)
#1 mtx_init /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/c11/impl/threads_posix.c:186:9 (libgallium-24.2.8-1ubuntu1~24.04.1.so+0x1504c9) (BuildId: 48f1fa5b9817cc9b1a495564c09ffd548eb36a28)
#2 GetAndInitDisplay /builds/worker/checkouts/gecko/gfx/gl/GLLibraryEGL.cpp:169:10 (libxul.so+0x4bcb491) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#3 mozilla::gl::GLLibraryEGL::CreateDisplayLocked(bool, bool, nsTSubstring<char>*, mozilla::detail::BaseAutoLock<mozilla::StaticMutex&> const&) /builds/worker/checkouts/gecko/gfx/gl/GLLibraryEGL.cpp:960:13 (libxul.so+0x4bcb491)
#4 mozilla::gl::GLLibraryEGL::CreateDisplay(bool, bool, nsTSubstring<char>*) /builds/worker/checkouts/gecko/gfx/gl/GLLibraryEGL.cpp:882:10 (libxul.so+0x4bc042e) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#5 mozilla::gl::GLContextEGLFactory::CreateImpl(void*, bool, bool) /builds/worker/checkouts/gecko/gfx/gl/GLContextProviderEGL.cpp:231:25 (libxul.so+0x4bbf8e2) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#6 Create /builds/worker/checkouts/gecko/gfx/gl/GLContextProviderEGL.cpp:320:7 (libxul.so+0x4bc6287) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#7 mozilla::gl::GLContextProviderEGL::CreateForCompositorWidget(mozilla::widget::CompositorWidget*, bool, bool) /builds/worker/checkouts/gecko/gfx/gl/GLContextProviderEGL.cpp:1009:10 (libxul.so+0x4bc6287)
#8 CreateGLContextEGL /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:1691:7 (libxul.so+0x51f13d0) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#9 CreateGLContext /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:1723:10 (libxul.so+0x51f13d0)
#10 mozilla::wr::RenderThread::CreateSingletonGL(nsTSubstring<char>&) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:1449:18 (libxul.so+0x51f13d0)
#11 mozilla::wr::RenderThread::InitDeviceTask() /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:1278:3 (libxul.so+0x51e925e) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#12 __invoke_impl<nsresult, nsresult (nsIThread::*const &)(), nsCOMPtr<nsIThread> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:73:14 (libxul.so+0x441de04) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#13 __invoke<nsresult (nsIThread::*const &)(), nsCOMPtr<nsIThread> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:95:14 (libxul.so+0x441de04)
#14 operator()<nsCOMPtr<nsIThread> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/functional:114:11 (libxul.so+0x441de04)
#15 __invoke_impl<nsresult, std::_Mem_fn<nsresult (nsIThread::*)()>, nsCOMPtr<nsIThread> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:60:14 (libxul.so+0x441de04)
#16 __invoke<std::_Mem_fn<nsresult (nsIThread::*)()>, nsCOMPtr<nsIThread> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:95:14 (libxul.so+0x441de04)
#17 __apply_impl<std::_Mem_fn<nsresult (nsIThread::*)()>, std::tuple<nsCOMPtr<nsIThread> &>, 0UL> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/tuple:1678:14 (libxul.so+0x441de04)
#18 apply<std::_Mem_fn<nsresult (nsIThread::*)()>, std::tuple<nsCOMPtr<nsIThread> &> > /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/tuple:1687:14 (libxul.so+0x441de04)
#19 mozilla::runnable_args_memfn<RefPtr<mozilla::MediaPipeline>, void (mozilla::MediaPipeline::*)()>::RunInternal() /builds/worker/checkouts/gecko/dom/media/webrtc/transport/runnable_utils.h:121:5 (libxul.so+0x441de04)
#20 mozilla::detail::runnable_args_base<(mozilla::detail::RunnableResult)0>::Run() /builds/worker/checkouts/gecko/dom/media/webrtc/transport/runnable_utils.h:41:5 (libxul.so+0x441dcae) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#21 nsThread::ProcessNextEvent(bool, bool*) /builds/worker/checkouts/gecko/xpcom/threads/nsThread.cpp:1153:16 (libxul.so+0x3969ce4) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#22 NS_ProcessNextEvent(nsIThread*, bool) /builds/worker/checkouts/gecko/xpcom/threads/nsThreadUtils.cpp:480:10 (libxul.so+0x3970004) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#23 mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate*) /builds/worker/checkouts/gecko/ipc/glue/MessagePump.cpp:329:5 (libxul.so+0x44b6e68) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#24 RunInternal /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:369:10 (libxul.so+0x4435ff8) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#25 RunHandler /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:362:3 (libxul.so+0x4435ff8)
#26 MessageLoop::Run() /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:344:3 (libxul.so+0x4435ff8)
#27 nsThread::ThreadFunc(void*) /builds/worker/checkouts/gecko/xpcom/threads/nsThread.cpp:366:10 (libxul.so+0x3965960) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#28 _pt_root /builds/worker/checkouts/gecko/nsprpub/pr/src/pthreads/ptthread.c:191:3 (libnspr4.so+0x4b0c8) (BuildId: 547b6ba24355d61349081fac5945ac4a423606a2)
Thread T37 'Renderer' (tid=1503, running) created by main thread at:
#0 pthread_create /builds/worker/fetches/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1023:3 (firefox-bin+0xc3511) (BuildId: 74918b8d36a8ceb86eaccd2c7274bee2f575320d)
#1 _PR_CreateThread /builds/worker/checkouts/gecko/nsprpub/pr/src/pthreads/ptthread.c:429:10 (libnspr4.so+0x423ce) (BuildId: 547b6ba24355d61349081fac5945ac4a423606a2)
#2 PR_CreateThread /builds/worker/checkouts/gecko/nsprpub/pr/src/pthreads/ptthread.c:496:10 (libnspr4.so+0x376d4) (BuildId: 547b6ba24355d61349081fac5945ac4a423606a2)
#3 nsThread::Init(nsTSubstring<char> const&) /builds/worker/checkouts/gecko/xpcom/threads/nsThread.cpp:615:20 (libxul.so+0x3967107) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#4 nsThreadManager::NewNamedThread(nsTSubstring<char> const&, nsIThreadManager::ThreadCreationOptions, nsIThread**) /builds/worker/checkouts/gecko/xpcom/threads/nsThreadManager.cpp:619:22 (libxul.so+0x396ec7e) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#5 NS_NewNamedThread(nsTSubstring<char> const&, nsIThread**, already_AddRefed<nsIRunnable>, nsIThreadManager::ThreadCreationOptions) /builds/worker/checkouts/gecko/xpcom/threads/nsThreadUtils.cpp:176:57 (libxul.so+0x397646c) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#6 NS_NewNamedThread<9UL> /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:76:10 (libxul.so+0x51e8e88) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#7 mozilla::wr::RenderThread::Start(unsigned int) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:141:17 (libxul.so+0x51e8e88)
#8 gfxPlatform::InitLayersIPC() /builds/worker/checkouts/gecko/gfx/thebes/gfxPlatform.cpp:1344:7 (libxul.so+0x505e1f2) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#9 gfxPlatform::Init() /builds/worker/checkouts/gecko/gfx/thebes/gfxPlatform.cpp:973:3 (libxul.so+0x505bd1f) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#10 GetPlatform /builds/worker/workspace/obj-build/dist/include/gfxPlatform.h:184:7 (libxul.so+0x8f19532) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#11 mozilla::widget::GfxInfoBase::GetContentBackend(nsTSubstring<char16_t>&) /builds/worker/checkouts/gecko/widget/GfxInfoBase.cpp:1809:25 (libxul.so+0x8f19532)
#12 NS_InvokeByIndex /builds/worker/checkouts/gecko/xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_x86_64_unix.S:101 (libxul.so+0x3991705) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#13 GetAttribute /builds/worker/checkouts/gecko/js/xpconnect/src/xpcprivate.h:1451:12 (libxul.so+0x460a548) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#14 XPC_WN_GetterSetter(JSContext*, unsigned int, JS::Value*) /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1006:10 (libxul.so+0x460a548)
#15 CallJSNative /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:494:13 (libxul.so+0xa14377b) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#16 js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct, js::CallReason) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:590:12 (libxul.so+0xa14377b)
#17 InternalCall /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:657:10 (libxul.so+0xa144420) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#18 js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>, js::CallReason) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:689:8 (libxul.so+0xa144420)
#19 js::CallGetter(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::MutableHandle<JS::Value>) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:811:10 (libxul.so+0xa1450ff) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#20 CallGetter /builds/worker/checkouts/gecko/js/src/vm/NativeObject.cpp:2092:12 (libxul.so+0xa3061bf) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#21 GetExistingProperty<(js::AllowGC)1> /builds/worker/checkouts/gecko/js/src/vm/NativeObject.cpp:2120:12 (libxul.so+0xa3061bf)
#22 NativeGetPropertyInline<(js::AllowGC)1> /builds/worker/checkouts/gecko/js/src/vm/NativeObject.cpp:2273:14 (libxul.so+0xa3061bf)
#23 js::NativeGetProperty(JSContext*, JS::Handle<js::NativeObject*>, JS::Handle<JS::Value>, JS::Handle<JS::PropertyKey>, JS::MutableHandle<JS::Value>) /builds/worker/checkouts/gecko/js/src/vm/NativeObject.cpp:2303:10 (libxul.so+0xa3061bf)
#24 GetElementOperationWithStackIndex /builds/worker/checkouts/gecko/js/src/vm/Interpreter-inl.h (libxul.so+0xa1507fa) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#25 js::Interpret(JSContext*, js::RunState&) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:3076:12 (libxul.so+0xa1507fa)
#26 MaybeEnterInterpreterTrampoline /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:395:10 (libxul.so+0xa142ce0) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#27 js::RunScript(JSContext*, js::RunState&) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:464:13 (libxul.so+0xa142ce0)
#28 js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct, js::CallReason) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:622:13 (libxul.so+0xa143860) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#29 InternalCall /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:657:10 (libxul.so+0xa144420) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#30 js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>, js::CallReason) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:689:8 (libxul.so+0xa144420)
#31 js::CallGetter(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::MutableHandle<JS::Value>) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:811:10 (libxul.so+0xa1450ff) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#32 CallGetter /builds/worker/checkouts/gecko/js/src/vm/NativeObject.cpp:2092:12 (libxul.so+0xa3061bf) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#33 GetExistingProperty<(js::AllowGC)1> /builds/worker/checkouts/gecko/js/src/vm/NativeObject.cpp:2120:12 (libxul.so+0xa3061bf)
#34 NativeGetPropertyInline<(js::AllowGC)1> /builds/worker/checkouts/gecko/js/src/vm/NativeObject.cpp:2273:14 (libxul.so+0xa3061bf)
#35 js::NativeGetProperty(JSContext*, JS::Handle<js::NativeObject*>, JS::Handle<JS::Value>, JS::Handle<JS::PropertyKey>, JS::MutableHandle<JS::Value>) /builds/worker/checkouts/gecko/js/src/vm/NativeObject.cpp:2303:10 (libxul.so+0xa3061bf)
#36 GetProperty /builds/worker/checkouts/gecko/js/src/vm/ObjectOperations-inl.h:113:10 (libxul.so+0xa15e9df) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#37 GetProperty /builds/worker/checkouts/gecko/js/src/vm/ObjectOperations-inl.h:120:10 (libxul.so+0xa15e9df)
#38 js::GetProperty(JSContext*, JS::Handle<JS::Value>, JS::Handle<js::PropertyName*>, JS::MutableHandle<JS::Value>) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:4630:10 (libxul.so+0xa15e9df)
#39 GetPropertyOperation /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:280:10 (libxul.so+0xa14ee5b) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#40 js::Interpret(JSContext*, js::RunState&) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:2941:12 (libxul.so+0xa14ee5b)
#41 MaybeEnterInterpreterTrampoline /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:395:10 (libxul.so+0xa142ce0) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#42 js::RunScript(JSContext*, js::RunState&) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:464:13 (libxul.so+0xa142ce0)
#43 js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct, js::CallReason) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:622:13 (libxul.so+0xa143860) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#44 InternalCall /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:657:10 (libxul.so+0xa144420) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#45 js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>, js::CallReason) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:689:8 (libxul.so+0xa144420)
#46 JS_CallFunctionValue(JSContext*, JS::Handle<JSObject*>, JS::Handle<JS::Value>, JS::HandleValueArray const&, JS::MutableHandle<JS::Value>) /builds/worker/checkouts/gecko/js/src/vm/CallAndConstruct.cpp:55:10 (libxul.so+0xa1e824e) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#47 nsXPCWrappedJS::CallMethod(unsigned short, nsXPTMethodInfo const*, nsXPTCMiniVariant*) /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedJSClass.cpp:918:17 (libxul.so+0x46000e1) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#48 PrepareAndDispatch /builds/worker/checkouts/gecko/xpcom/reflect/xptcall/md/unix/xptcstubs_x86_64_linux.cpp:115:37 (libxul.so+0x399272f) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#49 SharedStub xptcstubs_x86_64_linux.cpp (libxul.so+0x3991a62) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#50 nsXREDirProvider::DoStartup() /builds/worker/checkouts/gecko/toolkit/xre/nsXREDirProvider.cpp:653:11 (libxul.so+0x9fefbc5) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#51 XREMain::XRE_mainRun() /builds/worker/checkouts/gecko/toolkit/xre/nsAppRunner.cpp:5674:18 (libxul.so+0x9fdcba5) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#52 XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) /builds/worker/checkouts/gecko/toolkit/xre/nsAppRunner.cpp:6142:8 (libxul.so+0x9fddcdb) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#53 XRE_main(int, char**, mozilla::BootstrapConfig const&) /builds/worker/checkouts/gecko/toolkit/xre/nsAppRunner.cpp:6215:21 (libxul.so+0x9fde4bd) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#54 mozilla::BootstrapImpl::XRE_main(int, char**, mozilla::BootstrapConfig const&) /builds/worker/checkouts/gecko/toolkit/xre/Bootstrap.cpp:46:12 (libxul.so+0x9fecb12) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#55 do_main /builds/worker/checkouts/gecko/browser/app/nsBrowserApp.cpp:232:22 (firefox-bin+0x146e65) (BuildId: 74918b8d36a8ceb86eaccd2c7274bee2f575320d)
#56 main /builds/worker/checkouts/gecko/browser/app/nsBrowserApp.cpp:464:16 (firefox-bin+0x146e65)
Thread T50 'llvmpipe-0' (tid=1517, running) created by thread T37 at:
#0 pthread_create /builds/worker/fetches/llvm-project/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1023:3 (firefox-bin+0xc3511) (BuildId: 74918b8d36a8ceb86eaccd2c7274bee2f575320d)
#1 thrd_create /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/c11/impl/threads_posix.c:278:9 (libgallium-24.2.8-1ubuntu1~24.04.1.so+0x150564) (BuildId: 48f1fa5b9817cc9b1a495564c09ffd548eb36a28)
#2 mozilla::gl::GLContextEGL::CreateGLContext(std::shared_ptr<mozilla::gl::EglDisplay>, mozilla::gl::GLContextDesc const&, void*, void*, bool, void*, nsTSubstring<char>*) /builds/worker/checkouts/gecko/gfx/gl/GLContextProviderEGL.cpp:731:17 (libxul.so+0x4bc2b9f) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#3 mozilla::gl::GLContextEGLFactory::CreateImpl(void*, bool, bool) /builds/worker/checkouts/gecko/gfx/gl/GLContextProviderEGL.cpp:284:29 (libxul.so+0x4bbfc50) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#4 Create /builds/worker/checkouts/gecko/gfx/gl/GLContextProviderEGL.cpp:320:7 (libxul.so+0x4bc6287) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#5 mozilla::gl::GLContextProviderEGL::CreateForCompositorWidget(mozilla::widget::CompositorWidget*, bool, bool) /builds/worker/checkouts/gecko/gfx/gl/GLContextProviderEGL.cpp:1009:10 (libxul.so+0x4bc6287)
#6 CreateGLContextEGL /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:1691:7 (libxul.so+0x51f13d0) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#7 CreateGLContext /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:1723:10 (libxul.so+0x51f13d0)
#8 mozilla::wr::RenderThread::CreateSingletonGL(nsTSubstring<char>&) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:1449:18 (libxul.so+0x51f13d0)
#9 mozilla::wr::RenderThread::InitDeviceTask() /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:1278:3 (libxul.so+0x51e925e) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#10 __invoke_impl<nsresult, nsresult (nsIThread::*const &)(), nsCOMPtr<nsIThread> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:73:14 (libxul.so+0x441de04) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#11 __invoke<nsresult (nsIThread::*const &)(), nsCOMPtr<nsIThread> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:95:14 (libxul.so+0x441de04)
#12 operator()<nsCOMPtr<nsIThread> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/functional:114:11 (libxul.so+0x441de04)
#13 __invoke_impl<nsresult, std::_Mem_fn<nsresult (nsIThread::*)()>, nsCOMPtr<nsIThread> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:60:14 (libxul.so+0x441de04)
#14 __invoke<std::_Mem_fn<nsresult (nsIThread::*)()>, nsCOMPtr<nsIThread> &> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/bits/invoke.h:95:14 (libxul.so+0x441de04)
#15 __apply_impl<std::_Mem_fn<nsresult (nsIThread::*)()>, std::tuple<nsCOMPtr<nsIThread> &>, 0UL> /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/tuple:1678:14 (libxul.so+0x441de04)
#16 apply<std::_Mem_fn<nsresult (nsIThread::*)()>, std::tuple<nsCOMPtr<nsIThread> &> > /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/tuple:1687:14 (libxul.so+0x441de04)
#17 mozilla::runnable_args_memfn<RefPtr<mozilla::MediaPipeline>, void (mozilla::MediaPipeline::*)()>::RunInternal() /builds/worker/checkouts/gecko/dom/media/webrtc/transport/runnable_utils.h:121:5 (libxul.so+0x441de04)
#18 mozilla::detail::runnable_args_base<(mozilla::detail::RunnableResult)0>::Run() /builds/worker/checkouts/gecko/dom/media/webrtc/transport/runnable_utils.h:41:5 (libxul.so+0x441dcae) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#19 nsThread::ProcessNextEvent(bool, bool*) /builds/worker/checkouts/gecko/xpcom/threads/nsThread.cpp:1153:16 (libxul.so+0x3969ce4) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#20 NS_ProcessNextEvent(nsIThread*, bool) /builds/worker/checkouts/gecko/xpcom/threads/nsThreadUtils.cpp:480:10 (libxul.so+0x3970004) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#21 mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate*) /builds/worker/checkouts/gecko/ipc/glue/MessagePump.cpp:329:5 (libxul.so+0x44b6e68) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#22 RunInternal /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:369:10 (libxul.so+0x4435ff8) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#23 RunHandler /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:362:3 (libxul.so+0x4435ff8)
#24 MessageLoop::Run() /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:344:3 (libxul.so+0x4435ff8)
#25 nsThread::ThreadFunc(void*) /builds/worker/checkouts/gecko/xpcom/threads/nsThread.cpp:366:10 (libxul.so+0x3965960) (BuildId: 56619bb04b5235f9bbf08dcb266df9f74e131a37)
#26 _pt_root /builds/worker/checkouts/gecko/nsprpub/pr/src/pthreads/ptthread.c:191:3 (libnspr4.so+0x4b0c8) (BuildId: 547b6ba24355d61349081fac5945ac4a423606a2)
ThreadSanitizer: data race /usr/src/mesa-24.2.8-1ubuntu1~24.04.1/build/../src/gallium/drivers/llvmpipe/lp_fence.c:78:4 in lp_fence_destroy
```
Differential Revision: https://phabricator.services.mozilla.com/D250054
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.