src/gl.cc:3818: int clip_side(int, Point3D *, glsl::Interpolants *, Point3D *, glsl::Interpolants *) [AXIS = glsl::Y]: Assertion `false' failed.
Categories
(Core :: Graphics: WebRender, defect)
Tracking
()
People
(Reporter: geeknik, Unassigned)
References
(Blocks 2 open bugs)
Details
(Keywords: assertion, nightly-community, reporter-external, Whiteboard: [reporter-external] [client-bounty-form] [verif?])
Attachments
(1 file)
9.56 KB,
text/html
|
Details |
Whilst fuzzing Firefox Nightly (ASAN) Build ID 20210105094403, we're able to crash the browser by triggering this Assertion Failure. The profile is clean and about:support reports Compositing WebRender (Software).
###!!! [Parent][RunMessage] Error: Channel closing: too late to send/recv, messages will be lost
firefox: src/gl.cc:3818: int clip_side(int, Point3D *, glsl::Interpolants *, Point3D *, glsl::Interpolants *) [AXIS = glsl::Y]: Assertion `false' failed.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Reporter | ||
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Comment 1•4 years ago
|
||
Hey geeknik, You can try setting ASAN_OPTIONS=handle_abort=true
to get stacks for SIGABRTS from ASan.
BTW I'm guessing you've come across these in the past but FFPuppet does handle this sort of thing. I know fuzzing harness maintenance can be time consuming so Grizzly might also be helpful. Writing an adapter for your fuzzer/test case generator should not take much effort. Grizzly will handle de-duping and can do reductions as well.
Reporter | ||
Comment 2•4 years ago
•
|
||
Thanks Tyson, I'll take a look at Grizzly and see if we can make some changes locally. And thanks for the tip about ASAN_OPTIONS=handle_abort=true
, I totally forgot about that.
Here is the stack trace for this particular crash:
==197797==ERROR: AddressSanitizer: ABRT on unknown address 0x03e8000304a5 (pc 0x7f0a5d3d39e5 bp 0x7f0a5d52a0b8 sp 0x7f0a1622fbe0 T21)
#0 0x7f0a5d3d39e5 in raise (/lib64/libc.so.6+0x3c9e5)
#1 0x7f0a5d3bc894 in abort (/lib64/libc.so.6+0x25894)
#2 0x7f0a5d3bc768 in __assert_fail_base.cold (/lib64/libc.so.6+0x25768)
#3 0x7f0a5d3cbe75 in __assert_fail (/lib64/libc.so.6+0x34e75)
#4 0x7f0a560c7a0a in draw_quad(int, Texture&, int, Texture&) (/home/geeknik/firefox/libxul.so+0x15b82a0a)
#5 0x7f0a560bf501 in DrawElementsInstanced (/home/geeknik/firefox/libxul.so+0x15b7a501)
#6 0x7f0a55e774f1 in webrender::device::gl::Device::draw_indexed_triangles_instanced_u16::h00f9b336a2a02de2 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/device/gl.rs:3423:9
#7 0x7f0a55e774f1 in webrender::renderer::Renderer::draw_instanced_batch::hee39a65d83bd7df4 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:2724:13
#8 0x7f0a55e758a9 in webrender::renderer::Renderer::draw_alpha_batch_container::h726dac7834e03780 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:3166:17
#9 0x7f0a55e69d50 in webrender::renderer::Renderer::draw_picture_cache_target::h2c59fe8f0aeaf98d /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:3000:9
#10 0x7f0a55e69d50 in webrender::renderer::Renderer::draw_frame::h83f2ff29ab1e6c2d /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:4632:21
#11 0x7f0a55e4f4d8 in webrender::renderer::Renderer::render_impl::hc6d46d01ef24eb11 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:2151:17
#12 0x7f0a55e9e6ab in webrender::renderer::Renderer::render::h4bf7500c8f756e1a /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:1906:30
#13 0x7f0a55e9e6ab in wr_renderer_render /builds/worker/checkouts/gecko/gfx/webrender_bindings/src/bindings.rs:639:11
#14 0x7f0a49416364 in 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::RendererStats*) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RendererOGL.cpp:186:8
#15 0x7f0a494141fd in mozilla::wr::RenderThread::UpdateAndRender(mozilla::wr::WrWindowId, mozilla::layers::BaseTransactionId<mozilla::VsyncIdType> const&, mozilla::TimeStamp const&, bool, mozilla::Maybe<mozilla::gfx::IntSizeTyped<mozilla::gfx::UnknownUnits> > const&, mozilla::Maybe<mozilla::wr::ImageFormat> const&, mozilla::Maybe<mozilla::Range<unsigned char> > const&, bool*) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:476:31
#16 0x7f0a494136c6 in mozilla::wr::RenderThread::HandleFrameOneDoc(mozilla::wr::WrWindowId, bool) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:336:3
#17 0x7f0a494266ae in applyImpl<mozilla::wr::RenderThread, void (mozilla::wr::RenderThread::*)(mozilla::wr::WrWindowId, bool), StoreCopyPassByConstLRef<mozilla::wr::WrWindowId>, StoreCopyPassByConstLRef<bool> , 0, 1> /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1148:12
#18 0x7f0a494266ae in apply<mozilla::wr::RenderThread, void (mozilla::wr::RenderThread::*)(mozilla::wr::WrWindowId, bool)> /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1154:12
#19 0x7f0a494266ae in mozilla::detail::RunnableMethodImpl<mozilla::wr::RenderThread*, void (mozilla::wr::RenderThread::*)(mozilla::wr::WrWindowId, bool), true, (mozilla::RunnableKind)0, mozilla::wr::WrWindowId, bool>::Run() /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1201:13
#20 0x7f0a47635003 in RunTask /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:465:9
#21 0x7f0a47635003 in MessageLoop::DeferOrRunPendingTask(MessageLoop::PendingTask&&) /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:473:5
#22 0x7f0a4763673b in MessageLoop::DoWork() /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:548:13
#23 0x7f0a47638009 in base::MessagePumpDefault::Run(base::MessagePump::Delegate*) /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_pump_default.cc:35:31
#24 0x7f0a47633592 in RunInternal /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:334:10
#25 0x7f0a47633592 in RunHandler /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:327:3
#26 0x7f0a47633592 in MessageLoop::Run() /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:309:3
#27 0x7f0a47652ddb in base::Thread::ThreadMain() /builds/worker/checkouts/gecko/ipc/chromium/src/base/thread.cc:191:16
#28 0x7f0a4764996c in ThreadFunc(void*) /builds/worker/checkouts/gecko/ipc/chromium/src/base/platform_thread_posix.cc:40:13
#29 0x7f0a5d8cf431 in start_thread (/lib64/libpthread.so.0+0x9431)
#30 0x7f0a5d498912 in clone (/lib64/libc.so.6+0x101912)
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: ABRT (/lib64/libc.so.6+0x3c9e5) in raise
Thread T21 (Renderer) created by T0 here:
#0 0x559bd5b8535a in pthread_create /builds/worker/fetches/llvm-project/llvm/projects/compiler-rt/lib/asan/asan_interceptors.cpp:214:3
#1 0x7f0a4764348c in CreateThread /builds/worker/checkouts/gecko/ipc/chromium/src/base/platform_thread_posix.cc:123:14
#2 0x7f0a4764348c in PlatformThread::Create(unsigned long, PlatformThread::Delegate*, unsigned long*) /builds/worker/checkouts/gecko/ipc/chromium/src/base/platform_thread_posix.cc:134:10
#3 0x7f0a4765242e in base::Thread::StartWithOptions(base::Thread::Options const&) /builds/worker/checkouts/gecko/ipc/chromium/src/base/thread.cc:97:8
#4 0x7f0a4940e290 in mozilla::wr::RenderThread::Start() /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:90:16
#5 0x7f0a49165ed1 in gfxPlatform::InitLayersIPC() /builds/worker/checkouts/gecko/gfx/thebes/gfxPlatform.cpp:1336:7
#6 0x7f0a4916155d in gfxPlatform::Init() /builds/worker/checkouts/gecko/gfx/thebes/gfxPlatform.cpp:976:3
#7 0x7f0a4915f5cb in gfxPlatform::GetPlatform() /builds/worker/checkouts/gecko/gfx/thebes/gfxPlatform.cpp:509:5
#8 0x7f0a4f065f5b in GetPlatform /builds/worker/workspace/obj-build/dist/include/gfxPlatformGtk.h:31:29
#9 0x7f0a4f065f5b in nsWindow::nsWindow() /builds/worker/checkouts/gecko/widget/gtk/nsWindow.cpp:440:19
#10 0x7f0a4f0a535a in nsIWidget::CreateTopLevelWindow() /builds/worker/checkouts/gecko/widget/gtk/nsWindow.cpp:8094:36
#11 0x7f0a5247ff89 in mozilla::AppWindow::Initialize(nsIAppWindow*, nsIAppWindow*, int, int, bool, nsWidgetInitData&) /builds/worker/checkouts/gecko/xpfe/appshell/AppWindow.cpp:208:15
#12 0x7f0a524a500c in nsAppShellService::JustCreateTopWindow(nsIAppWindow*, nsIURI*, unsigned int, int, int, bool, mozilla::AppWindow**) /builds/worker/checkouts/gecko/xpfe/appshell/nsAppShellService.cpp:710:15
#13 0x7f0a524a5ff2 in nsAppShellService::CreateTopLevelWindow(nsIAppWindow*, nsIURI*, unsigned int, int, int, nsIAppWindow**) /builds/worker/checkouts/gecko/xpfe/appshell/nsAppShellService.cpp:173:8
#14 0x7f0a52d6bc16 in nsAppStartup::CreateChromeWindow(nsIWebBrowserChrome*, unsigned int, nsIOpenWindowInfo*, bool*, nsIWebBrowserChrome**) /builds/worker/checkouts/gecko/toolkit/components/startup/nsAppStartup.cpp:649:15
#15 0x7f0a52f173a0 in nsWindowWatcher::CreateChromeWindow(nsIWebBrowserChrome*, unsigned int, nsIOpenWindowInfo*, nsIWebBrowserChrome**) /builds/worker/checkouts/gecko/toolkit/components/windowwatcher/nsWindowWatcher.cpp:419:33
#16 0x7f0a52f1225f in nsWindowWatcher::OpenWindowInternal(mozIDOMWindowProxy*, nsTSubstring<char> const&, nsTSubstring<char> const&, nsTSubstring<char> const&, bool, bool, bool, nsIArray*, bool, bool, bool, nsPIWindowWatcher::PrintKind, nsDocShellLoadState*, mozilla::dom::BrowsingContext**) /builds/worker/checkouts/gecko/toolkit/components/windowwatcher/nsWindowWatcher.cpp:947:12
#17 0x7f0a52f0f578 in nsWindowWatcher::OpenWindow(mozIDOMWindowProxy*, nsTSubstring<char> const&, nsTSubstring<char> const&, nsTSubstring<char> const&, nsISupports*, mozIDOMWindowProxy**) /builds/worker/checkouts/gecko/toolkit/components/windowwatcher/nsWindowWatcher.cpp:293:3
#18 0x7f0a464947b1 in NS_InvokeByIndex /builds/worker/checkouts/gecko/xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_x86_64_unix.S:101
#19 0x7f0a48372aa1 in Invoke /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNative.cpp:1620:10
#20 0x7f0a48372aa1 in Call /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNative.cpp:1176:19
#21 0x7f0a48372aa1 in XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNative.cpp:1142:23
#22 0x7f0a483787bd in XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:925:10
#23 0x7f0a5326306b in CallJSNative /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:503:13
#24 0x7f0a5326306b in js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct, js::CallReason) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:594:12
#25 0x7f0a5324d8ef in InternalCall /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:647:10
#26 0x7f0a5324d8ef in CallFromStack /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:651:10
#27 0x7f0a5324d8ef in Interpret(JSContext*, js::RunState&) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:3309:16
#28 0x7f0a53232e2c in js::RunScript(JSContext*, js::RunState&) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:473:13
#29 0x7f0a53268d5f in js::ExecuteKernel(JSContext*, JS::Handle<JSScript*>, JS::Handle<JSObject*>, JS::Handle<JS::Value>, js::AbstractFramePtr, JS::MutableHandle<JS::Value>) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:839:13
#30 0x7f0a532ffca8 in ExecuteInExtensibleLexicalEnvironment(JSContext*, JS::Handle<JSScript*>, JS::Handle<JSObject*>) /builds/worker/checkouts/gecko/js/src/builtin/Eval.cpp:492:10
#31 0x7f0a5330098c in JS::ExecuteInJSMEnvironment(JSContext*, JS::Handle<JSScript*>, JS::Handle<JSObject*>, JS::Handle<JS::StackGCVector<JSObject*, js::TempAllocPolicy> >) /builds/worker/checkouts/gecko/js/src/builtin/Eval.cpp:599:10
#32 0x7f0a53300471 in JS::ExecuteInJSMEnvironment(JSContext*, JS::Handle<JSScript*>, JS::Handle<JSObject*>) /builds/worker/checkouts/gecko/js/src/builtin/Eval.cpp:554:10
#33 0x7f0a4825bd2e in mozJSComponentLoader::ObjectForLocation(ComponentLoaderInfo&, nsIFile*, JS::MutableHandle<JSObject*>, JS::MutableHandle<JSScript*>, char**, bool, JS::MutableHandle<JS::Value>) /builds/worker/checkouts/gecko/js/xpconnect/loader/mozJSComponentLoader.cpp:846:19
#34 0x7f0a48263c7a in mozJSComponentLoader::Import(JSContext*, nsTSubstring<char> const&, JS::MutableHandle<JSObject*>, JS::MutableHandle<JSObject*>, bool) /builds/worker/checkouts/gecko/js/xpconnect/loader/mozJSComponentLoader.cpp:1250:12
#35 0x7f0a463e3e3a in mozilla::xpcom::ConstructJSMComponent(nsTSubstring<char> const&, char const*, nsISupports**) /builds/worker/workspace/obj-build/xpcom/components/StaticComponents.cpp:1751:3
#36 0x7f0a463c9e44 in mozilla::xpcom::CreateInstanceImpl(mozilla::xpcom::ModuleID, nsISupports*, nsID const&, void**) /builds/worker/workspace/obj-build/xpcom/components/StaticComponents.cpp:10931:7
#37 0x7f0a46400b1c in CreateInstance /builds/worker/checkouts/gecko/xpcom/components/nsComponentManager.cpp:176:46
#38 0x7f0a46400b1c in nsComponentManagerImpl::GetServiceLocked(mozilla::Maybe<mozilla::MonitorAutoLock>&, (anonymous namespace)::EntryWrapper&, nsID const&, void**) /builds/worker/checkouts/gecko/xpcom/components/nsComponentManager.cpp:1282:17
#39 0x7f0a464031bb in nsComponentManagerImpl::GetServiceByContractID(char const*, nsID const&, void**) /builds/worker/checkouts/gecko/xpcom/components/nsComponentManager.cpp:1471:10
#40 0x7f0a464090c2 in CallGetService /builds/worker/checkouts/gecko/xpcom/components/nsComponentManagerUtils.cpp:61:43
#41 0x7f0a464090c2 in nsGetServiceByContractIDWithError::operator()(nsID const&, void**) const /builds/worker/checkouts/gecko/xpcom/components/nsComponentManagerUtils.cpp:253:21
#42 0x7f0a46269dee in nsCOMPtr_base::assign_from_gs_contractid_with_error(nsGetServiceByContractIDWithError const&, nsID const&) /builds/worker/checkouts/gecko/xpcom/base/nsCOMPtr.cpp:91:7
#43 0x7f0a52fe57c1 in operator= /builds/worker/workspace/obj-build/dist/include/nsCOMPtr.h:1065:5
#44 0x7f0a52fe57c1 in nsAppStartupNotifier::NotifyObservers(char const*) /builds/worker/checkouts/gecko/toolkit/xre/nsAppStartupNotifier.cpp:46:23
#45 0x7f0a52fd6983 in XREMain::XRE_mainRun() /builds/worker/checkouts/gecko/toolkit/xre/nsAppRunner.cpp:4908:3
#46 0x7f0a52fd98b8 in XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) /builds/worker/checkouts/gecko/toolkit/xre/nsAppRunner.cpp:5330:8
#47 0x7f0a52fda480 in XRE_main(int, char**, mozilla::BootstrapConfig const&) /builds/worker/checkouts/gecko/toolkit/xre/nsAppRunner.cpp:5389:21
#48 0x559bd5bcd954 in do_main /builds/worker/checkouts/gecko/browser/app/nsBrowserApp.cpp:219:22
#49 0x559bd5bcd954 in main /builds/worker/checkouts/gecko/browser/app/nsBrowserApp.cpp:337:16
#50 0x7f0a5d3be041 in __libc_start_main (/lib64/libc.so.6+0x27041)
Comment 3•4 years ago
|
||
That's just an unhandled case where we simply don't draw the unknown stuff. Not a security problem.
Comment 4•4 years ago
|
||
Lee, you added this assert in Bug 1683980. Looks like we now have a testcase that reproduces the failure case.
Comment 5•4 years ago
|
||
This does not seem to reproduce for me at all. Since fixes in bug 1683980 have landed in nightly does this still reproduce?
Updated•4 years ago
|
Reporter | ||
Comment 7•4 years ago
|
||
This bug is back in Build ID 20210123215311. The original test case is still valid.
==303020==ERROR: AddressSanitizer: ABRT on unknown address 0x03e800049fac (pc 0x7f3910ec99e5 bp 0x7f39110200b8 sp 0x7f38dbdf2b30 T21)
#0 0x7f3910ec99e5 in raise (/lib64/libc.so.6+0x3c9e5)
#1 0x7f3910eb2894 in abort (/lib64/libc.so.6+0x25894)
#2 0x7f3910eb2768 in __assert_fail_base.cold (/lib64/libc.so.6+0x25768)
#3 0x7f3910ec1e75 in __assert_fail (/lib64/libc.so.6+0x34e75)
#4 0x7f3909be1d4a in draw_quad(int, Texture&, int, Texture&) (/home/geeknik/firefox/libxul.so+0x15c11d4a)
#5 0x7f3909bda871 in DrawElementsInstanced (/home/geeknik/firefox/libxul.so+0x15c0a871)
#6 0x7f390999462f in webrender::device::gl::Device::draw_indexed_triangles_instanced_u16::h74d3ef54ec8f0966 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/device/gl.rs:3506:9
#7 0x7f390999462f in webrender::renderer::Renderer::draw_instanced_batch::h5feeb02887979656 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:2705:17
#8 0x7f39099915f9 in webrender::renderer::Renderer::draw_alpha_batch_container::h72a9ab8958649ac4 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:3153:17
#9 0x7f390998641a in webrender::renderer::Renderer::draw_picture_cache_target::hb22082993492680f /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:2987:9
#10 0x7f390998641a in webrender::renderer::Renderer::draw_frame::h7d35da186d970155 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:4626:21
#11 0x7f3909969bb3 in webrender::renderer::Renderer::render_impl::h4b6ca51e2ea6cf64 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:2131:17
#12 0x7f39099ba13b in webrender::renderer::Renderer::render::hf2b72bcc90393de2 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:1877:30
#13 0x7f39099ba13b in wr_renderer_render /builds/worker/checkouts/gecko/gfx/webrender_bindings/src/bindings.rs:639:11
#14 0x7f38fcec5912 in 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::RendererStats*) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RendererOGL.cpp:186:8
#15 0x7f38fcec3799 in mozilla::wr::RenderThread::UpdateAndRender(mozilla::wr::WrWindowId, mozilla::layers::BaseTransactionId<mozilla::VsyncIdType> const&, mozilla::TimeStamp const&, bool, mozilla::Maybe<mozilla::gfx::IntSizeTyped<mozilla::gfx::UnknownUnits> > const&, mozilla::Maybe<mozilla::wr::ImageFormat> const&, mozilla::Maybe<mozilla::Range<unsigned char> > const&, bool*) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:480:31
#16 0x7f38fcec2bf6 in mozilla::wr::RenderThread::HandleFrameOneDoc(mozilla::wr::WrWindowId, bool) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:336:3
#17 0x7f38fced5c5e in applyImpl<mozilla::wr::RenderThread, void (mozilla::wr::RenderThread::*)(mozilla::wr::WrWindowId, bool), StoreCopyPassByConstLRef<mozilla::wr::WrWindowId>, StoreCopyPassByConstLRef<bool> , 0, 1> /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1148:12
#18 0x7f38fced5c5e in apply<mozilla::wr::RenderThread, void (mozilla::wr::RenderThread::*)(mozilla::wr::WrWindowId, bool)> /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1154:12
#19 0x7f38fced5c5e in mozilla::detail::RunnableMethodImpl<mozilla::wr::RenderThread*, void (mozilla::wr::RenderThread::*)(mozilla::wr::WrWindowId, bool), true, (mozilla::RunnableKind)0, mozilla::wr::WrWindowId, bool>::Run() /builds/worker/workspace/obj-build/dist/include/nsThreadUtils.h:1201:13
#20 0x7f38fb0de163 in RunTask /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:465:9
#21 0x7f38fb0de163 in MessageLoop::DeferOrRunPendingTask(MessageLoop::PendingTask&&) /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:473:5
#22 0x7f38fb0df89b in MessageLoop::DoWork() /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:548:13
#23 0x7f38fb0e1169 in base::MessagePumpDefault::Run(base::MessagePump::Delegate*) /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_pump_default.cc:35:31
#24 0x7f38fb0dc6f2 in RunInternal /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:334:10
#25 0x7f38fb0dc6f2 in RunHandler /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:327:3
#26 0x7f38fb0dc6f2 in MessageLoop::Run() /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:309:3
#27 0x7f38fb0fbf3b in base::Thread::ThreadMain() /builds/worker/checkouts/gecko/ipc/chromium/src/base/thread.cc:191:16
#28 0x7f38fb0f2acc in ThreadFunc(void*) /builds/worker/checkouts/gecko/ipc/chromium/src/base/platform_thread_posix.cc:40:13
#29 0x7f39113c5431 in start_thread (/lib64/libpthread.so.0+0x9431)
#30 0x7f3910f8e912 in clone (/lib64/libc.so.6+0x101912)
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: ABRT (/lib64/libc.so.6+0x3c9e5) in raise
Thread T21 (Renderer) created by T0 here:
#0 0x5559805d229a in pthread_create /builds/worker/fetches/llvm-project/llvm/projects/compiler-rt/lib/asan/asan_interceptors.cpp:214:3
#1 0x7f38fb0ec5ec in CreateThread /builds/worker/checkouts/gecko/ipc/chromium/src/base/platform_thread_posix.cc:123:14
#2 0x7f38fb0ec5ec in PlatformThread::Create(unsigned long, PlatformThread::Delegate*, unsigned long*) /builds/worker/checkouts/gecko/ipc/chromium/src/base/platform_thread_posix.cc:134:10
#3 0x7f38fb0fb58e in base::Thread::StartWithOptions(base::Thread::Options const&) /builds/worker/checkouts/gecko/ipc/chromium/src/base/thread.cc:97:8
#4 0x7f38fcebd7f0 in mozilla::wr::RenderThread::Start() /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:90:16
#5 0x7f38fcc13661 in gfxPlatform::InitLayersIPC() /builds/worker/checkouts/gecko/gfx/thebes/gfxPlatform.cpp:1348:7
#6 0x7f38fcc0eb2d in gfxPlatform::Init() /builds/worker/checkouts/gecko/gfx/thebes/gfxPlatform.cpp:988:3
#7 0x7f38fcc0cb9b in gfxPlatform::GetPlatform() /builds/worker/checkouts/gecko/gfx/thebes/gfxPlatform.cpp:516:5
#8 0x7f3902b70cb2 in GetPlatform /builds/worker/workspace/obj-build/dist/include/gfxPlatformGtk.h:31:29
#9 0x7f3902b70cb2 in nsWindow::nsWindow() /builds/worker/checkouts/gecko/widget/gtk/nsWindow.cpp:476:19
#10 0x7f3902bb0bba in nsIWidget::CreateTopLevelWindow() /builds/worker/checkouts/gecko/widget/gtk/nsWindow.cpp:8222:36
#11 0x7f3905fa7e89 in mozilla::AppWindow::Initialize(nsIAppWindow*, nsIAppWindow*, int, int, bool, nsWidgetInitData&) /builds/worker/checkouts/gecko/xpfe/appshell/AppWindow.cpp:210:15
#12 0x7f3905fccf0c in nsAppShellService::JustCreateTopWindow(nsIAppWindow*, nsIURI*, unsigned int, int, int, bool, mozilla::AppWindow**) /builds/worker/checkouts/gecko/xpfe/appshell/nsAppShellService.cpp:710:15
#13 0x7f3905fcdef2 in nsAppShellService::CreateTopLevelWindow(nsIAppWindow*, nsIURI*, unsigned int, int, int, nsIAppWindow**) /builds/worker/checkouts/gecko/xpfe/appshell/nsAppShellService.cpp:173:8
#14 0x7f390688f236 in nsAppStartup::CreateChromeWindow(nsIWebBrowserChrome*, unsigned int, nsIOpenWindowInfo*, bool*, nsIWebBrowserChrome**) /builds/worker/checkouts/gecko/toolkit/components/startup/nsAppStartup.cpp:649:15
#15 0x7f3906a3af40 in nsWindowWatcher::CreateChromeWindow(nsIWebBrowserChrome*, unsigned int, nsIOpenWindowInfo*, nsIWebBrowserChrome**) /builds/worker/checkouts/gecko/toolkit/components/windowwatcher/nsWindowWatcher.cpp:419:33
#16 0x7f3906a35dff in nsWindowWatcher::OpenWindowInternal(mozIDOMWindowProxy*, nsTSubstring<char> const&, nsTSubstring<char> const&, nsTSubstring<char> const&, bool, bool, bool, nsIArray*, bool, bool, bool, nsPIWindowWatcher::PrintKind, nsDocShellLoadState*, mozilla::dom::BrowsingContext**) /builds/worker/checkouts/gecko/toolkit/components/windowwatcher/nsWindowWatcher.cpp:947:12
#17 0x7f3906a33118 in nsWindowWatcher::OpenWindow(mozIDOMWindowProxy*, nsTSubstring<char> const&, nsTSubstring<char> const&, nsTSubstring<char> const&, nsISupports*, mozIDOMWindowProxy**) /builds/worker/checkouts/gecko/toolkit/components/windowwatcher/nsWindowWatcher.cpp:293:3
#18 0x7f38f9f3be61 in NS_InvokeByIndex /builds/worker/checkouts/gecko/xpcom/reflect/xptcall/md/unix/xptcinvoke_asm_x86_64_unix.S:101
#19 0x7f38fbe1d431 in Invoke /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNative.cpp:1620:10
#20 0x7f38fbe1d431 in Call /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNative.cpp:1176:19
#21 0x7f38fbe1d431 in XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNative.cpp:1142:23
#22 0x7f38fbe2314d in XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:925:10
#23 0x7f3906d88b8b in CallJSNative /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:503:13
#24 0x7f3906d88b8b in js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct, js::CallReason) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:594:12
#25 0x7f3906d73411 in InternalCall /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:647:10
#26 0x7f3906d73411 in CallFromStack /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:651:10
#27 0x7f3906d73411 in Interpret(JSContext*, js::RunState&) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:3309:16
#28 0x7f3906d5895c in js::RunScript(JSContext*, js::RunState&) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:473:13
#29 0x7f3906d8e87f in js::ExecuteKernel(JSContext*, JS::Handle<JSScript*>, JS::Handle<JSObject*>, JS::Handle<JS::Value>, js::AbstractFramePtr, JS::MutableHandle<JS::Value>) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:839:13
#30 0x7f3906e21f78 in ExecuteInExtensibleLexicalEnvironment(JSContext*, JS::Handle<JSScript*>, JS::Handle<JSObject*>) /builds/worker/checkouts/gecko/js/src/builtin/Eval.cpp:400:10
#31 0x7f3906e22c5c in JS::ExecuteInJSMEnvironment(JSContext*, JS::Handle<JSScript*>, JS::Handle<JSObject*>, JS::Handle<JS::StackGCVector<JSObject*, js::TempAllocPolicy> >) /builds/worker/checkouts/gecko/js/src/builtin/Eval.cpp:507:10
#32 0x7f3906e22741 in JS::ExecuteInJSMEnvironment(JSContext*, JS::Handle<JSScript*>, JS::Handle<JSObject*>) /builds/worker/checkouts/gecko/js/src/builtin/Eval.cpp:462:10
#33 0x7f38fbd0695e in mozJSComponentLoader::ObjectForLocation(ComponentLoaderInfo&, nsIFile*, JS::MutableHandle<JSObject*>, JS::MutableHandle<JSScript*>, char**, bool, JS::MutableHandle<JS::Value>) /builds/worker/checkouts/gecko/js/xpconnect/loader/mozJSComponentLoader.cpp:846:19
#34 0x7f38fbd0e8aa in mozJSComponentLoader::Import(JSContext*, nsTSubstring<char> const&, JS::MutableHandle<JSObject*>, JS::MutableHandle<JSObject*>, bool) /builds/worker/checkouts/gecko/js/xpconnect/loader/mozJSComponentLoader.cpp:1250:12
#35 0x7f38f9e8b46a in mozilla::xpcom::ConstructJSMComponent(nsTSubstring<char> const&, char const*, nsISupports**) /builds/worker/workspace/obj-build/xpcom/components/StaticComponents.cpp:1741:3
#36 0x7f38f9e76bee in mozilla::xpcom::CreateInstanceImpl(mozilla::xpcom::ModuleID, nsISupports*, nsID const&, void**) /builds/worker/workspace/obj-build/xpcom/components/StaticComponents.cpp:11715:7
#37 0x7f38f9ea821c in CreateInstance /builds/worker/checkouts/gecko/xpcom/components/nsComponentManager.cpp:176:46
#38 0x7f38f9ea821c in nsComponentManagerImpl::GetServiceLocked(mozilla::Maybe<mozilla::MonitorAutoLock>&, (anonymous namespace)::EntryWrapper&, nsID const&, void**) /builds/worker/checkouts/gecko/xpcom/components/nsComponentManager.cpp:1282:17
#39 0x7f38f9eaa8bb in nsComponentManagerImpl::GetServiceByContractID(char const*, nsID const&, void**) /builds/worker/checkouts/gecko/xpcom/components/nsComponentManager.cpp:1471:10
#40 0x7f38f9eb07c2 in CallGetService /builds/worker/checkouts/gecko/xpcom/components/nsComponentManagerUtils.cpp:61:43
#41 0x7f38f9eb07c2 in nsGetServiceByContractIDWithError::operator()(nsID const&, void**) const /builds/worker/checkouts/gecko/xpcom/components/nsComponentManagerUtils.cpp:253:21
#42 0x7f38f9d1180e in nsCOMPtr_base::assign_from_gs_contractid_with_error(nsGetServiceByContractIDWithError const&, nsID const&) /builds/worker/checkouts/gecko/xpcom/base/nsCOMPtr.cpp:91:7
#43 0x7f3906b0a591 in operator= /builds/worker/workspace/obj-build/dist/include/nsCOMPtr.h:1065:5
#44 0x7f3906b0a591 in nsAppStartupNotifier::NotifyObservers(char const*) /builds/worker/checkouts/gecko/toolkit/xre/nsAppStartupNotifier.cpp:46:23
#45 0x7f3906afb278 in XREMain::XRE_mainRun() /builds/worker/checkouts/gecko/toolkit/xre/nsAppRunner.cpp:4932:5
#46 0x7f3906afe1c8 in XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) /builds/worker/checkouts/gecko/toolkit/xre/nsAppRunner.cpp:5358:8
#47 0x7f3906afed90 in XRE_main(int, char**, mozilla::BootstrapConfig const&) /builds/worker/checkouts/gecko/toolkit/xre/nsAppRunner.cpp:5417:21
#48 0x55598061a894 in do_main /builds/worker/checkouts/gecko/browser/app/nsBrowserApp.cpp:220:22
#49 0x55598061a894 in main /builds/worker/checkouts/gecko/browser/app/nsBrowserApp.cpp:344:16
#50 0x7f3910eb4041 in __libc_start_main (/lib64/libc.so.6+0x27041)
==303020==ABORTING
Reporter | ||
Comment 8•4 years ago
|
||
Not sure if the same Assertion Failure in the console and different stack trace are the same bug or a different bug:
###!!! [Parent][RunMessage] Error: Channel closing: too late to send/recv, messages will be lost
firefox: src/gl.cc:4169: int clip_side(int, Point3D *, glsl::Interpolants *, Point3D *, glsl::Interpolants *) [AXIS = glsl::Y]: Assertion `false' failed.
AddressSanitizer:DEADLYSIGNAL
Exiting due to channel error.
==1162063==ERROR: AddressSanitizer: ABRT on unknown address 0x03e80011bb4f (pc 0x7f12b28897d5 bp 0x7f12b29e00d8 sp 0x7f11fdbf2af0 T21)
#0 0x7f12b28897d5 in raise (/lib64/libc.so.6+0x3c7d5)
#1 0x7f12b2872894 in abort (/lib64/libc.so.6+0x25894)
#2 0x7f12b2872768 in __assert_fail_base.cold (/lib64/libc.so.6+0x25768)
#3 0x7f12b2881e85 in __assert_fail (/lib64/libc.so.6+0x34e85)
#4 0x7f12ab57eca1 in brush_image_ANTIALIASING_REPETITION_TEXTURE_2D_program::loader() (/home/geeknik/firefox/libxul.so+0x15dcbca1)
#5 0x7f12ab57a1a1 in linear_convert_yuv(Texture&, Texture&, Texture&, YUVColorSpace, int, IntRect const&, Texture&, IntRect const&, bool, IntRect const&) (/home/geeknik/firefox/libxul.so+0x15dc71a1)
#6 0x7f12ab333def in webrender::renderer::Renderer::draw_color_target::h70d20cea7cbbbacf /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs
#7 0x7f12ab333def in webrender::renderer::Renderer::draw_frame::h9018937cd05c0d7e /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:4730:17
#8 0x7f12ab330dc4 in webrender::device::gl::TextureUploader::upload::h8a8666158fc48bfe /builds/worker/checkouts/gecko/gfx/wr/webrender/src/device/gl.rs:4497:89
#9 0x7f12ab330dc4 in webrender::renderer::vertex::VertexDataTexture$LT$T$GT$::update::h37dea731d37d748e /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/vertex.rs:781:9
#10 0x7f12ab330dc4 in webrender::renderer::vertex::VertexDataTextures::update::h0b66dc5aaa4e1e4f /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/vertex.rs:824:9
#11 0x7f12ab330dc4 in webrender::renderer::Renderer::bind_frame_data::hd4358a34b6c63997 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:4422:9
#12 0x7f12ab330dc4 in webrender::renderer::Renderer::draw_frame::h9018937cd05c0d7e /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:4503:9
#13 0x7f12ab32652b in webrender::renderer::_::_$LT$impl$u20$serde..ser..Serialize$u20$for$u20$webrender..renderer..PlainExternalResources$GT$::serialize::h221b5368a4eae55c /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:5696:40
#14 0x7f12ab32652b in ron::ser::to_string_pretty::hc7bd312ec20f93c7 /builds/worker/checkouts/gecko/third_party/rust/ron/src/ser/mod.rs:50:5
#15 0x7f12ab32652b in webrender::capture::CaptureConfig::serialize::h922244991babf3da /builds/worker/checkouts/gecko/gfx/wr/webrender/src/capture.rs:142:19
#16 0x7f12ab32652b in webrender::capture::CaptureConfig::serialize_for_resource::he0d284213bc76228 /builds/worker/checkouts/gecko/gfx/wr/webrender/src/capture.rs:126:9
#17 0x7f12ab32652b in webrender::renderer::Renderer::save_capture::ha659a5c2a1fd535a /builds/worker/checkouts/gecko/gfx/wr/webrender/src/renderer/mod.rs:5919:13
#18 0x7f12ab3093e3 in _$LT$webrender..prim_store..PrimKeyCommonData$u20$as$u20$core..cmp..PartialEq$GT$::eq::h6af2d9820f470b8b /builds/worker/checkouts/gecko/gfx/wr/webrender/src/prim_store/mod.rs:395:5
#19 0x7f12ab3093e3 in _$LT$webrender..prim_store..PrimKey$LT$T$GT$$u20$as$u20$core..cmp..PartialEq$GT$::eq::h98ef8dff12e93b6d /builds/worker/checkouts/gecko/gfx/wr/webrender/src/prim_store/mod.rs:411:5
#20 0x7f12ab3093e3 in hashbrown::map::HashMap$LT$K$C$V$C$S$GT$::get_mut::_$u7b$$u7b$closure$u7d$$u7d$::h9b437c392914a9fb /cargo/registry/src/github.com-1ecc6299db9ec823/hashbrown-0.9.0/src/map.rs:952:41
#21 0x7f12ab3093e3 in hashbrown::raw::RawTable$LT$T$GT$::find::hec3581356d868dcd /cargo/registry/src/github.com-1ecc6299db9ec823/hashbrown-0.9.0/src/raw/mod.rs:996:27
#22 0x7f12ab3093e3 in hashbrown::map::HashMap$LT$K$C$V$C$S$GT$::get_mut::h55355934b63b115f /cargo/registry/src/github.com-1ecc6299db9ec823/hashbrown-0.9.0/src/map.rs:952:15
#23 0x7f12ab3093e3 in std::collections::hash::map::HashMap$LT$K$C$V$C$S$GT$::get_mut::h7aff832096708bf5 /builds/worker/fetches/rustc/lib/rustlib/src/rust/library/std/src/collections/hash/map.rs:811:9
#24 0x7f12ab3093e3 in webrender::intern::Interner$LT$I$GT$::intern::h594d918fc7c1a1ae /builds/worker/checkouts/gecko/gfx/wr/webrender/src/intern.rs:276:32
#25 0x7f12ab3093e3 in webrender::scene_building::SceneBuilder::create_primitive::hcaf13d4e618a5fee /builds/worker/checkouts/gecko/gfx/wr/webrender/src/scene_building.rs:1516:32
#26 0x7f12ab359e2b in _$LT$webrender_api..display_item..LineStyle$u20$as$u20$core..fmt..Debug$GT$::fmt::h60c8e0bff8c17c89 /builds/worker/checkouts/gecko/gfx/wr/webrender_api/src/display_item.rs
#27 0x7f12ab359e2b in _$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$::fmt::h61a6cecf7477e7cd /builds/worker/fetches/rustc/lib/rustlib/src/rust/library/core/src/fmt/mod.rs:1982:62
#28 0x7f129e72f432 in mozilla::wr::RenderThread::DoAccumulateMemoryReport(mozilla::wr::MemoryReport, RefPtr<mozilla::MozPromise<mozilla::wr::MemoryReport, bool, true>::Private> const&) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:167:7
#29 0x7f129e72d2b9 in ~RefPtr /builds/worker/workspace/obj-build/dist/include/mozilla/RefPtr.h:80:9
#30 0x7f129e72d2b9 in ~pair /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/stl_pair.h:208:12
#31 0x7f129e72d2b9 in destroy<std::pair<const unsigned long, RefPtr<mozilla::wr::RenderTextureHost> > > /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/ext/new_allocator.h:140:28
#32 0x7f129e72d2b9 in destroy<std::pair<const unsigned long, RefPtr<mozilla::wr::RenderTextureHost> > > /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/alloc_traits.h:487:8
#33 0x7f129e72d2b9 in _M_deallocate_node /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/hashtable_policy.h:2084:7
#34 0x7f129e72d2b9 in _M_deallocate_nodes /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/hashtable_policy.h:2097:4
#35 0x7f129e72d2b9 in clear /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/hashtable.h:2032:13
#36 0x7f129e72d2b9 in ~_Hashtable /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/hashtable.h:1358:7
#37 0x7f129e72d2b9 in ~unordered_map /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/unordered_map.h:101:11
#38 0x7f129e72d2b9 in mozilla::wr::RenderThread::~RenderThread() /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:75:1
#39 0x7f129e72c716 in operator<< /builds/worker/workspace/obj-build/dist/include/mozilla/gfx/Logging.h:295:9
#40 0x7f129e72c716 in mozilla::wr::RenderTextureHostWrapper::EnsureTextureHost() const /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderTextureHostWrapper.cpp:30:27
#41 0x7f129e73f77e in std::_Hashtable<mozilla::wr::FontInstanceKey, std::pair<mozilla::wr::FontInstanceKey const, mozilla::wr::FontInstanceData>, std::allocator<std::pair<mozilla::wr::FontInstanceKey const, mozilla::wr::FontInstanceData> >, std::__detail::_Select1st, std::equal_to<mozilla::wr::FontInstanceKey>, std::hash<mozilla::wr::FontInstanceKey>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::clear() /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/hashtable.h:2033:24
#42 0x7f129c91c041 in base::LinearHistogram::FactoryGet(int, int, unsigned long, base::Histogram::Flags, int const*) /builds/worker/checkouts/gecko/ipc/chromium/src/base/histogram.cc:452:3
#43 0x7f129c91ebda in append /builds/worker/workspace/obj-build/dist/include/mozilla/Printf.h
#44 0x7f129c91ebda in vprint /builds/worker/workspace/obj-build/dist/include/mozilla/Printf.h:157:62
#45 0x7f129c91ebda in mozilla::UniquePtr<char, mozilla::detail::AllocPolicyBasedFreePolicy<mozilla::MallocAllocPolicy> > mozilla::VsmprintfAppend<mozilla::MallocAllocPolicy>(mozilla::UniquePtr<char, mozilla::detail::AllocPolicyBasedFreePolicy<mozilla::MallocAllocPolicy> >&&, char const*, __va_list_tag*) /builds/worker/workspace/obj-build/dist/include/mozilla/Printf.h:258:11
#46 0x7f129c920679 in get_tls_ptr /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:51:3
#47 0x7f129c920679 in MessageLoop::MessageLoop(MessageLoop::Type, nsIEventTarget*) /builds/worker/checkouts/gecko/ipc/chromium/src/base/message_loop.cc:198:3
#48 0x7f129c91b802 in _Alloc_hider /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/basic_string.h:3286:17
#49 0x7f129c91b802 in basic_string /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/basic_string.h:3481:9
#50 0x7f129c91b802 in base::Histogram::GetAsciiBucketRange(unsigned long) const /builds/worker/checkouts/gecko/ipc/chromium/src/base/histogram.cc:297:15
#51 0x7f129c93b72b in assign /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/char_traits.h:285:16
#52 0x7f129c93b72b in _M_copy /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/basic_string.h:3370:4
#53 0x7f129c93b72b in _M_clone /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/basic_string.tcc:1081:2
#54 0x7f129c93b72b in std::string::reserve(unsigned long) /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/basic_string.tcc:960:30
#55 0x7f129c9322bc (/home/geeknik/firefox/libxul.so+0x717f2bc)
#56 0x7f12b2d84431 in start_thread (/lib64/libpthread.so.0+0x9431)
#57 0x7f12b294e6d2 in clone (/lib64/libc.so.6+0x1016d2)
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: ABRT (/lib64/libc.so.6+0x3c7d5) in raise
Thread T21 (Renderer) created by T0 here:
#0 0x55b1a5af651a in pthread_create /builds/worker/fetches/llvm-project/llvm/projects/compiler-rt/lib/asan/asan_interceptors.cpp:214:3
#1 0x7f129c92bafc in Data /builds/worker/workspace/obj-build/dist/include/mozilla/BufferList.h:195:7
#2 0x7f129c92bafc in CopyInto<int> /builds/worker/checkouts/gecko/ipc/chromium/src/base/pickle.cc:105:67
#3 0x7f129c92bafc in Pickle::ReadInt(PickleIterator*, int*) const /builds/worker/checkouts/gecko/ipc/chromium/src/base/pickle.cc:222:9
#4 0x7f129c93ad7e in assign /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/char_traits.h:398:16
#5 0x7f129c93ad7e in _M_copy /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/basic_string.h:3370:4
#6 0x7f129c93ad7e in std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_Rep::_M_clone(std::allocator<wchar_t> const&, unsigned long) /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/basic_string.tcc:1081:2
#7 0x7f129e727310 in get_YCbCrDescriptor /builds/worker/workspace/obj-build/ipc/ipdl/_ipdlheaders/mozilla/layers/LayersSurfaces.h:2571:9
#8 0x7f129e727310 in mozilla::wr::RenderExternalTextureHost::RenderExternalTextureHost(unsigned char*, mozilla::layers::BufferDescriptor const&) /builds/worker/checkouts/gecko/gfx/webrender_bindings/RenderExternalTextureHost.cpp:27:58
#9 0x7f129e474b91 in gfxPlatform::Init() /builds/worker/checkouts/gecko/gfx/thebes/gfxPlatform.cpp:842:7
#10 0x7f129e47005d in basic_stringstream /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/sstream:705:7
#11 0x7f129e47005d in CrashStatsLogForwarder::UpdateCrashReport() /builds/worker/checkouts/gecko/gfx/thebes/gfxPlatform.cpp:277:21
#12 0x7f129e46e0cb in Length /builds/worker/workspace/obj-build/dist/include/nsTArray.h:413:43
#13 0x7f129e46e0cb in ApplyIf<nsTAutoStringN<char, 64>, nsDefaultComparator<nsTString<char>, nsTAutoStringN<char, 64> >, (lambda at /builds/worker/workspace/obj-build/dist/include/nsTArray.h:1285:26), (lambda at /builds/worker/workspace/obj-build/dist/include/nsTArray.h:1285:49)> /builds/worker/workspace/obj-build/dist/include/nsTArray.h:2105:46
#14 0x7f129e46e0cb in Contains<nsTAutoStringN<char, 64>, nsDefaultComparator<nsTString<char>, nsTAutoStringN<char, 64> > > /builds/worker/workspace/obj-build/dist/include/nsTArray.h:1284:12
#15 0x7f129e46e0cb in Contains<nsTAutoStringN<char, 64> > /builds/worker/workspace/obj-build/dist/include/nsTArray.h:1302:12
#16 0x7f129e46e0cb in gfxFontUtils::ReadOtherFamilyNamesForFace(nsTSubstring<char> const&, char const*, unsigned int, nsTArray<nsTString<char> >&, bool) /builds/worker/checkouts/gecko/gfx/thebes/gfxFontUtils.cpp:1927:30
#17 0x7f12a4460392 in operator unsigned long /builds/worker/workspace/obj-build/dist/include/mozilla/TimeStamp.h:53:38
#18 0x7f12a4460392 in operator- /builds/worker/workspace/obj-build/dist/include/mozilla/TimeStamp.h:485:29
#19 0x7f12a4460392 in nsUserIdleService::SetTimerExpiryIfBefore(mozilla::TimeStamp) /builds/worker/checkouts/gecko/widget/nsUserIdleService.cpp:809:55
#20 0x7f12a44a0f7a in nsWindow::Create(nsIWidget*, void*, mozilla::gfx::IntRectTyped<mozilla::LayoutDevicePixel> const&, nsWidgetInitData*) /builds/worker/checkouts/gecko/widget/gtk/nsWindow.cpp:4663:13
#21 0x7f12a78b2639 in nsSHistory::ReloadCurrentEntry(nsTArray<nsSHistory::LoadEntryResult>&) /builds/worker/checkouts/gecko/docshell/shistory/nsSHistory.cpp:1188:3
#22 0x7f12a78d76bc in mozilla::AppWindow::StaggerPosition(int&, int&, int, int) /builds/worker/checkouts/gecko/xpfe/appshell/AppWindow.cpp:1568:32
#23 0x7f12a78d86a2 in ~nsTSubstring /builds/worker/workspace/obj-build/dist/include/nsTSubstring.h
#24 0x7f12a78d86a2 in ReadIntAttribute /builds/worker/checkouts/gecko/xpfe/appshell/AppWindow.cpp:1324:1
#25 0x7f12a78d86a2 in mozilla::ReadSize(mozilla::dom::Element const&, nsAtom*, nsAtom*, nsAtom*) /builds/worker/checkouts/gecko/xpfe/appshell/AppWindow.cpp:1328:25
#26 0x7f12a820b926 in Length /builds/worker/workspace/obj-build/dist/include/nsTArray.h:413:37
#27 0x7f12a820b926 in IsEmpty /builds/worker/workspace/obj-build/dist/include/nsTArray.h:416:33
#28 0x7f12a820b926 in ~nsTArray_Impl /builds/worker/workspace/obj-build/dist/include/nsTArray.h:1011:21
#29 0x7f12a820b926 in SetElementAsObject(JSContext*, mozilla::dom::Element*, JS::Handle<JS::Value>) /builds/worker/checkouts/gecko/toolkit/components/sessionstore/SessionStoreUtils.cpp:934:3
#30 0x7f12a83bfc80 in AssignInternal<nsTArrayInfallibleAllocator, RefPtr<const mozilla::safebrowsing::CacheResult> > /builds/worker/workspace/obj-build/dist/include/nsTArray.h:2410:47
#31 0x7f12a83bfc80 in nsTArrayInfallibleAllocator::ResultType nsTArray_Impl<RefPtr<mozilla::safebrowsing::CacheResult const>, nsTArrayInfallibleAllocator>::Assign<nsTArrayInfallibleAllocator, nsTArrayInfallibleAllocator>(nsTArray_Impl<RefPtr<mozilla::safebrowsing::CacheResult const>, nsTArrayInfallibleAllocator> const&) /builds/worker/workspace/obj-build/dist/include/nsTArray.h:1432:12
#32 0x7f12a83bab3f in AddThreatSourceFromRedirectEntry(mozilla::safebrowsing::ThreatHit&, nsIRedirectHistoryEntry*, mozilla::safebrowsing::ThreatHit_ThreatSourceType) /builds/worker/checkouts/gecko/toolkit/components/url-classifier/nsUrlClassifierUtils.cpp:639:1
#33 0x7f12a83b7e58 in fetch_add /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/atomic_base.h:514:16
#34 0x7f12a83b7e58 in operator++ /builds/worker/workspace/obj-build/dist/include/nsISupportsImpl.h:354:19
#35 0x7f12a83b7e58 in AddRef /builds/worker/checkouts/gecko/toolkit/components/url-classifier/nsUrlClassifierDBService.cpp:109:5
#36 0x7f12a83b7e58 in AddRef /builds/worker/workspace/obj-build/dist/include/mozilla/RefPtr.h:49:39
#37 0x7f12a83b7e58 in AddRef /builds/worker/workspace/obj-build/dist/include/mozilla/RefPtr.h:380:35
#38 0x7f12a83b7e58 in RefPtr /builds/worker/workspace/obj-build/dist/include/mozilla/RefPtr.h:109:7
#39 0x7f12a83b7e58 in nsUrlClassifierDBService::FeatureHolder::GetOrCreateTableData(nsTSubstring<char> const&) /builds/worker/checkouts/gecko/toolkit/components/url-classifier/nsUrlClassifierDBService.cpp:248:35
#40 0x7f129b75a951 in GetCompartment /builds/worker/workspace/obj-build/dist/include/js/Object.h:59:58
#41 0x7f129b75a951 in DoGetOrCreateDOMReflector<nsINodeList, mozilla::dom::binding_detail::eWrapIntoContextCompartment> /builds/worker/workspace/obj-build/dist/include/mozilla/dom/BindingUtils.h:1085:7
#42 0x7f129b75a951 in GetOrCreateDOMReflector<nsINodeList> /builds/worker/workspace/obj-build/dist/include/mozilla/dom/BindingUtils.h:1117:10
#43 0x7f129b75a951 in bool WrapDOMObject<nsINodeList>(JSContext*, void*, JS::MutableHandle<JS::Value>) /builds/worker/workspace/obj-build/xpcom/reflect/xptinfo/xptdata.cpp:49:10
#44 0x7f129d6724b1 in ~nsCOMPtr_base /builds/worker/workspace/obj-build/dist/include/nsCOMPtr.h:328:7
#45 0x7f129d6724b1 in XPCWrappedNative::GetNewOrUsed(JSContext*, xpcObjectHelper&, XPCWrappedNativeScope*, XPCNativeInterface*, XPCWrappedNative**) /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNative.cpp:447:1
#46 0x7f129d6781cd in ConvertDependentParam /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNative.cpp:1596:23
#47 0x7f129d6781cd in ConvertDependentParams /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNative.cpp:1559:10
#48 0x7f129d6781cd in Call /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNative.cpp:1172:31
#49 0x7f129d6781cd in XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) /builds/worker/checkouts/gecko/js/xpconnect/src/XPCWrappedNative.cpp:1142:23
#50 0x7f12a8713f5b in load /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/atomic_base.h:396:9
#51 0x7f12a8713f5b in load /builds/worker/workspace/obj-build/dist/include/mozilla/Atomics.h:191:17
#52 0x7f12a8713f5b in operator unsigned int /builds/worker/workspace/obj-build/dist/include/mozilla/Atomics.h:336:31
#53 0x7f12a8713f5b in hasAnyPendingInterrupt /builds/worker/checkouts/gecko/js/src/vm/JSContext.h:876:12
#54 0x7f12a8713f5b in CheckForInterrupt /builds/worker/checkouts/gecko/js/src/vm/JSContext-inl.h:305:7
#55 0x7f12a8713f5b in Interpret(JSContext*, js::RunState&) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:4063:7
#56 0x7f12a86fe7e1 in opMask /builds/worker/checkouts/gecko/js/src/vm/Activation.h:540:34
#57 0x7f12a86fe7e1 in Interpret(JSContext*, js::RunState&) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:4157:5
#58 0x7f12a86e3d2c in destroy /builds/worker/workspace/obj-build/dist/include/mozilla/Vector.h
#59 0x7f12a86e3d2c in mozilla::Vector<js::HeapPtr<JSObject*>, 0ul, js::ZoneAllocPolicy>::convertToHeapStorage(unsigned long) /builds/worker/workspace/obj-build/dist/include/mozilla/Vector.h:934:3
#60 0x7f12a8719c4f in ~Rooted /builds/worker/workspace/obj-build/dist/include/js/RootingAPI.h:1135:6
#61 0x7f12a8719c4f in GetElementOperationWithStackIndex /builds/worker/checkouts/gecko/js/src/vm/Interpreter-inl.h:560:1
#62 0x7f12a8719c4f in Interpret(JSContext*, js::RunState&) /builds/worker/checkouts/gecko/js/src/vm/Interpreter.cpp:3116:14
#63 0x7f12a87ad33d in Memcpy /builds/worker/checkouts/gecko/js/src/builtin/DataViewObject.cpp:284:3
#64 0x7f12a87ad33d in toBuffer /builds/worker/checkouts/gecko/js/src/builtin/DataViewObject.cpp:318:5
#65 0x7f12a87ad33d in bool js::DataViewObject::write<unsigned char>(JSContext*, JS::Handle<js::DataViewObject*>, JS::CallArgs const&) /builds/worker/checkouts/gecko/js/src/builtin/DataViewObject.cpp:491:5
#66 0x7f12a87ae01c in EmulatesUndefined /builds/worker/checkouts/gecko/js/src/builtin/Boolean-inl.h:22:22
#67 0x7f12a87ae01c in ToBooleanSlow /builds/worker/checkouts/gecko/js/src/builtin/Boolean.cpp:173:11
#68 0x7f12a87ae01c in ToBoolean /builds/worker/workspace/obj-build/dist/include/js/Conversions.h:128:10
#69 0x7f12a87ae01c in bool js::DataViewObject::write<short>(JSContext*, JS::Handle<js::DataViewObject*>, JS::CallArgs const&) /builds/worker/checkouts/gecko/js/src/builtin/DataViewObject.cpp:465:47
#70 0x7f12a87adb01 in js::DataViewObject::setInt16Impl(JSContext*, JS::CallArgs const&) /builds/worker/checkouts/gecko/js/src/builtin/DataViewObject.cpp:750:1
#71 0x7f129d5598ed in findNonLiveSlot /builds/worker/workspace/obj-build/dist/include/mozilla/HashTable.h:1812:11
#72 0x7f129d5598ed in bool mozilla::detail::HashTable<mozilla::HashMapEntry<JS::Heap<JSObject*>, JS::Heap<JSObject*> >, mozilla::HashMap<JS::Heap<JSObject*>, JS::Heap<JSObject*>, js::MovableCellHasher<JS::Heap<JSObject*> >, js::SystemAllocPolicy>::MapHashPolicy, js::SystemAllocPolicy>::add<JSObject*&, JSObject*&>(mozilla::detail::HashTable<mozilla::HashMapEntry<JS::Heap<JSObject*>, JS::Heap<JSObject*> >, mozilla::HashMap<JS::Heap<JSObject*>, JS::Heap<JSObject*>, js::MovableCellHasher<JS::Heap<JSObject*> >, js::SystemAllocPolicy>::MapHashPolicy, js::SystemAllocPolicy>::AddPtr&, JSObject*&, JSObject*&) /builds/worker/workspace/obj-build/dist/include/mozilla/HashTable.h:2142:22
#73 0x7f129d561c63 in AddRef /builds/worker/workspace/obj-build/dist/include/mozilla/RefPtr.h
#74 0x7f129d561c63 in AddRef /builds/worker/workspace/obj-build/dist/include/mozilla/RefPtr.h:380:35
#75 0x7f129d561c63 in RefPtr /builds/worker/workspace/obj-build/dist/include/mozilla/RefPtr.h:109:7
#76 0x7f129d561c63 in MakeRefPtr<BackstagePass> /builds/worker/workspace/obj-build/dist/include/mozilla/RefPtr.h:603:13
#77 0x7f129d561c63 in mozJSComponentLoader::CreateLoaderGlobal(JSContext*, nsTSubstring<char> const&, JS::MutableHandle<JSObject*>) /builds/worker/checkouts/gecko/js/xpconnect/loader/mozJSComponentLoader.cpp:546:24
#78 0x7f129b6a458a in nsTStringRepr /builds/worker/workspace/obj-build/dist/include/nsTStringRepr.h:320:9
#79 0x7f129b6a458a in nsTLiteralString /builds/worker/workspace/obj-build/dist/include/nsTLiteralString.h:96:9
#80 0x7f129b6a458a in nsTLiteralString<46> /builds/worker/workspace/obj-build/dist/include/nsTLiteralString.h:50:9
#81 0x7f129b6a458a in mozilla::xpcom::CreateInstanceImpl(mozilla::xpcom::ModuleID, nsISupports*, nsID const&, void**) /builds/worker/workspace/obj-build/xpcom/components/StaticComponents.cpp:11206:7
#82 0x7f129b68f499 in Release /builds/worker/workspace/obj-build/dist/include/mozilla/RefPtr.h
#83 0x7f129b68f499 in Release /builds/worker/workspace/obj-build/dist/include/mozilla/RefPtr.h:381:36
#84 0x7f129b68f499 in ~RefPtr /builds/worker/workspace/obj-build/dist/include/mozilla/RefPtr.h:81:7
#85 0x7f129b68f499 in mozilla::xpcom::CreateInstanceImpl(mozilla::xpcom::ModuleID, nsISupports*, nsID const&, void**) /builds/worker/workspace/obj-build/xpcom/components/StaticComponents.cpp:10695:5
#86 0x7f129b6c348c in nsComponentManagerImpl::RegisterManifest(NSLocationType, mozilla::FileLocation&, bool) /builds/worker/checkouts/gecko/xpcom/components/nsComponentManager.cpp:683
#87 0x7f129b6c5b2b in nsComponentManagerImpl::KnownModule::Load() /builds/worker/checkouts/gecko/xpcom/components/nsComponentManager.cpp:798:7
#88 0x7f129b6cbcf2 in load /builds/worker/fetches/clang/bin/../lib/gcc/x86_64-unknown-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/atomic_base.h:396:9
#89 0x7f129b6cbcf2 in load /builds/worker/workspace/obj-build/dist/include/mozilla/Atomics.h:191:17
#90 0x7f129b6cbcf2 in operator unsigned int /builds/worker/workspace/obj-build/dist/include/mozilla/Atomics.h:336:31
#91 0x7f129b6cbcf2 in pushLabelFrame /builds/worker/workspace/obj-build/dist/include/js/ProfilingStack.h:411:32
#92 0x7f129b6cbcf2 in Push /builds/worker/workspace/obj-build/dist/include/GeckoProfiler.h:1111:24
#93 0x7f129b6cbcf2 in AutoProfilerLabel /builds/worker/workspace/obj-build/dist/include/GeckoProfiler.h:1090:5
#94 0x7f129b6cbcf2 in nsComponentManagerImpl::GetServiceByContractID(char const*, nsID const&, void**) /builds/worker/checkouts/gecko/xpcom/components/nsComponentManager.cpp:1461:3
#95 0x7f129b5290ae in ~nsCOMPtr_base /builds/worker/checkouts/gecko/xpcom/base/nsCOMPtr.h:328:7
#96 0x7f129b5290ae in ~MemoryTelemetry /builds/worker/checkouts/gecko/xpcom/base/MemoryTelemetry.h:55:30
#97 0x7f129b5290ae in Release /builds/worker/checkouts/gecko/xpcom/base/MemoryTelemetry.cpp:90:1
#98 0x7f129b5290ae in non-virtual thunk to mozilla::MemoryTelemetry::Release() /builds/worker/checkouts/gecko/xpcom/base/MemoryTelemetry.cpp
#99 0x7f12a8493451 in XREMain::XRE_mainRun() /builds/worker/checkouts/gecko/toolkit/xre/nsAppRunner.cpp:4951:23
#100 0x7f12a8483173 in mozilla::startup::GetIncompleteStartupFile(nsIFile*) /builds/worker/checkouts/gecko/toolkit/xre/nsAppRunner.cpp
#101 0x7f12a8486a68 in ~nsCOMPtr_base /builds/worker/workspace/obj-build/dist/include/nsCOMPtr.h
#102 0x7f12a8486a68 in XREMain::XRE_mainStartup(bool*) /builds/worker/checkouts/gecko/toolkit/xre/nsAppRunner.cpp:4730:1
#103 0x7f12a84877e0 in XREMain::XRE_mainStartup(bool*) /builds/worker/checkouts/gecko/toolkit/xre/nsAppRunner.cpp:4596:21
#104 0x55b1a5b3eb14 in do_main /builds/worker/checkouts/gecko/browser/app/nsBrowserApp.cpp:220:22
#105 0x55b1a5b3eb14 in main /builds/worker/checkouts/gecko/browser/app/nsBrowserApp.cpp:344:16
#106 0x7f12b2874081 in __libc_start_main (/lib64/libc.so.6+0x27081)
==1162063==ABORTING
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•6 months ago
|
Description
•