Am Donnerstag, dem 31.08.2023 um 23:16 +0200 schrieb John Paul Adrian Glaubitz: > On Thu, 2023-08-31 at 23:06 +0200, John Paul Adrian Glaubitz wrote: > > Can anyone running Debian on ppc64 please give it a try? > > It might crash because of this bug: > > > https://bugzilla.mozilla.org/show_bug.cgi?id=1845669 > > Adrian >
Hi Adrian, I was just able to test it using an upgraded Debian Sid ppc64: It crashes because of: Thread 1 "firefox-esr" received signal SIGSEGV, Segmentation fault. i32_load8_u (addr=2014643200, mem=<optimized out>) at rlbox.wasm.c:146 146 rlbox.wasm.c: Datei oder Verzeichnis nicht gefunden. Backtrace attached. Regards Johannes
Thread 1 "firefox-esr" received signal SIGSEGV, Segmentation fault. i32_load8_u (addr=2014643200, mem=<optimized out>) at rlbox.wasm.c:146 146 rlbox.wasm.c: Datei oder Verzeichnis nicht gefunden. (gdb) bt #0 i32_load8_u (addr=2014643200, mem=<optimized out>) at rlbox.wasm.c:146 #1 w2c_rlbox_streqci (var_p0=var_p0@entry=262000, var_p1=2014643200, instance=<optimized out>) at rlbox.wasm.c:925 #2 0x00007fffe96bdbe8 in w2c_rlbox_getEncodingIndex (var_p0=<optimized out>, instance=<optimized out>) at rlbox.wasm.c:66394 #3 w2c_rlbox_getEncodingIndex (var_p0=262000, instance=0x7fffd89a8000) at rlbox.wasm.c:841 #4 w2c_rlbox_MOZ_XmlInitEncodingNS_0 (instance=0x7fffd89a8000, var_p0=438772, var_p1=438768, var_p2=262000) at rlbox.wasm.c:2467 #5 0x00007fffe97097dc in w2c_rlbox_initializeEncoding (instance=instance@entry=0x7fffd89a8000, var_p0=var_p0@entry=438624) at rlbox.wasm.c:48421 #6 0x00007fffe97cbc38 in w2c_rlbox_prologInitProcessor (instance=0x7fffd89a8000, var_p0=438624, var_p1=445808, var_p2=511344, var_p3=262140) at rlbox.wasm.c:45429 #7 0x00007fffe97dc744 in w2c_rlbox_MOZ_XML_Parse_0 (var_p3=0, var_p2=65536, var_p1=445808, var_p0=438624, instance=0x7fffd89a8000) at rlbox.wasm.c:49444 #8 w2c_rlbox_MOZ_XML_Parse (instance=0x7fffd89a8000, var_p0=438624, var_p1=445808, var_p2=65536, var_p3=0) at rlbox.wasm.c:20953 #9 0x00007fffea549d30 in rlbox::rlbox_wasm2c_sandbox::impl_invoke_with_func_ptr<XML_Status (XML_ParserStruct*, char const*, int, int), XML_Status (unsigned int, unsigned int, int, int), unsigned int, unsigned int, unsigned int, bool>(XML_Status (*)(unsigned int, unsigned int, int, int), unsigned int&&, unsigned int&&, unsigned int&&, bool&&) (func_ptr=<optimized out>, this=0x7fffd89a8000) at ./build-browser/dist/include/mozilla/rlbox/rlbox_wasm2c_sandbox.hpp:763 #10 rlbox::rlbox_sandbox<rlbox::rlbox_wasm2c_sandbox>::INTERNAL_invoke_with_func_ptr<XML_Status (XML_ParserStruct*, char const*, int, int), rlbox::tainted<XML_ParserStruct*, rlbox::rlbox_wasm2c_sandbox>&, rlbox::tainted<char const*, rlbox::rlbox_wasm2c_sandbox>, unsigned long, bool>(char const*, void*, rlbox::tainted<XML_ParserStruct*, rlbox::rlbox_wasm2c_sandbox>&, rlbox::tainted<char const*, rlbox::rlbox_wasm2c_sandbox>&&, unsigned long&&, bool&&) (func_name=<optimized out>, func_ptr=<optimized out>, this=<optimized out>) at ./build-browser/dist/include/mozilla/rlbox/rlbox_sandbox.hpp:790 #11 nsExpatDriver::ParseChunk(char16_t const*, unsigned int, nsExpatDriver::ChunkOrBufferIsFinal, unsigned int*, unsigned long*) (this=0x7ffff76ee740, aBuffer=<optimized out>, aLength=aLength@entry=32768, aIsFinal=aIsFinal@entry=nsExpatDriver::ChunkOrBufferIsFinal::FinalChunk, aConsumed=0x7fffffffc21c, aLastLineLength=0x7fffffffc220) at ./parser/htmlparser/nsExpatDriver.cpp:1248 #12 0x00007fffea54a13c in nsExpatDriver::ChunkAndParseBuffer(char16_t const*, unsigned int, bool, unsigned int*, unsigned int*, unsigned long*) (this=this@entry=0x7ffff76ee740, aBuffer=aBuffer@entry=0x7fffdbf60020 u"<?xml version=\"1.0\"?>\n\n<!-- The \"global.css\" stylesheet is imported first to allow other stylesheets to\n override rules using selectors with the same specificity. This applies to\n both \"conten"..., aLength=aLength@entry=32768, aIsFinal=aIsFinal@entry=false, aPassedToExpat=aPassedToExpat@entry=0x7fffffffc218, aConsumed=aConsumed@entry=0x7fffffffc21c, aLastLineLength=aLastLineLength@entry=0x7fffffffc220) at ./parser/htmlparser/nsExpatDriver.cpp:1204 #13 0x00007fffea54a580 in nsExpatDriver::ResumeParse(nsScanner&, bool) (this=0x7ffff76ee740, aScanner=..., aIsFinalChunk=aIsFinalChunk@entry=false) at ./parser/htmlparser/nsExpatDriver.cpp:1352 #14 0x00007fffea550e1c in nsParser::ResumeParse(bool, bool, bool) (this=this@entry=0x7fffda24d810, allowIteration=allowIteration@entry=true, aIsFinalChunk=aIsFinalChunk@entry=false, aCanInterrupt=aCanInterrupt@entry=true) at ./parser/htmlparser/nsParser.cpp:715 #15 0x00007fffea551d00 in nsParser::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int) (sourceOffset=<optimized out>, aLength=<optimized out>, pIStream=<optimized out>, request=<optimized out>, this=0x7fffda24d810) --Type <RET> for more, q to quit, c to continue without paging--c at ./parser/htmlparser/nsParser.cpp:1027 #16 nsParser::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int) (this=0x7fffda24d810, request=<optimized out>, pIStream=<optimized out>, sourceOffset=<optimized out>, aLength=<optimized out>) at ./parser/htmlparser/nsParser.cpp:978 #17 0x00007fffea513108 in .non-virtual thunk to mozilla::parser::PrototypeDocumentParser::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int) () at ./parser/prototype/PrototypeDocumentParser.h:42 #18 0x00007fffea4860b0 in nsDocumentOpenInfo::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int) (this=<optimized out>, request=<optimized out>, inStr=<optimized out>, sourceOffset=<optimized out>, count=<optimized out>) at ./uriloader/base/nsURILoader.cpp:202 #19 0x00007fffea154780 in mozilla::net::ParentChannelWrapper::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int) (this=<optimized out>, aRequest=<optimized out>, aInputStream=<optimized out>, aOffset=<optimized out>, aCount=<optimized out>) at ./netwerk/ipc/ParentChannelWrapper.h:27 #20 0x00007fffe9ff08d0 in mozilla::net::ParentChannelListener::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int) (this=0x7fffdb230e80, aRequest=0x7ffff4a922a0, aInputStream=0x7fffe2b806a0, aOffset=0, aCount=<optimized out>) at ./netwerk/protocol/http/ParentChannelListener.cpp:115 #21 0x00007fffea4860b0 in nsDocumentOpenInfo::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int) (this=<optimized out>, request=<optimized out>, inStr=<optimized out>, sourceOffset=<optimized out>, count=<optimized out>) at ./uriloader/base/nsURILoader.cpp:202 #22 0x00007fffea413d44 in nsJARChannel::OnDataAvailable(nsIRequest*, nsIInputStream*, unsigned long, unsigned int) (this=0x7ffff4a922a0, req=<optimized out>, stream=0x7fffe2b806a0, offset=0, count=288833) at ./modules/libjar/nsJARChannel.cpp:1312 #23 0x00007fffe9ab2328 in nsInputStreamPump::OnStateTransfer() (this=this@entry=0x7ffff76ec940) at ./netwerk/base/nsInputStreamPump.cpp:584 #24 0x00007fffe9ab28b8 in nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) (this=0x7ffff76ec940, stream=<optimized out>) at ./netwerk/base/nsInputStreamPump.cpp:411 #25 0x00007fffe98a4444 in CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}::operator()() const (__closure=<optimized out>) at ./xpcom/io/nsPipe3.cpp:73 c#26 NS_NewCancelableRunnableFunction<CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}>(char const*, CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}&&)::FuncCancelableRunnable::Run() (this=<optimized out>) at ./build-browser/dist/include/nsThreadUtils.h:667 #27 NS_NewCancelableRunnableFunction<CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}>(char const*, CallbackHolder::CallbackHolder(nsIAsyncInputStream*, nsIInputStreamCallback*, unsigned int, nsIEventTarget*)::{lambda()#1}&&)::FuncCancelableRunnable::Run() (this=<optimized out>) at ./build-browser/dist/include/nsThreadUtils.h:665 #28 0x00007fffe98f6608 in mozilla::RunnableTask::Run() (this=0x7fffe76e5500) at ./xpcom/threads/TaskController.cpp:555 #29 mozilla::TaskController::DoExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex&> const&) (this=this@entry=0x7ffff4a43200, aProofOfLock=...) at ./xpcom/threads/TaskController.cpp:879 #30 0x00007fffe98f7304 in mozilla::TaskController::ExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex&> const&) (this=this@entry=0x7ffff4a43200, aProofOfLock=...) at ./xpcom/threads/TaskController.cpp:702 #31 0x00007fffe98f77d4 in mozilla::TaskController::ProcessPendingMTTask(bool) (aMayWait=false, this=0x7ffff4a43200) at ./xpcom/threads/TaskController.cpp:491 #32 operator() (__closure=<optimized out>) at ./xpcom/threads/TaskController.cpp:218 #33 mozilla::detail::RunnableFunction<mozilla::TaskController::TaskController()::<lambda()> >::Run(void) (this=<optimized out>) at ./xpcom/threads/nsThreadUtils.h:548 #34 0x00007fffe9927e2c in nsThread::ProcessNextEvent(bool, bool*) (this=0x7fffe7b54180, aMayWait=<optimized out>, aResult=0x7fffffffced7) at ./xpcom/threads/nsThread.cpp:1240 #35 0x00007fffe9915994 in NS_ProcessNextEvent(nsIThread*, bool) (aThread=<optimized out>, aMayWait=<optimized out>) at ./xpcom/threads/nsThreadUtils.cpp:479 #36 0x00007fffea29cc7c in mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) (this=0x7fffe2c24d80, aDelegate=0x7ffff7580b00) at ./ipc/glue/MessagePump.cpp:85 #37 0x00007fffea23a504 in MessageLoop::RunInternal() (this=<optimized out>) at ./build-browser/dist/include/mozilla/RefPtr.h:319 #38 MessageLoop::RunHandler() (this=<optimized out>) at ./ipc/chromium/src/base/message_loop.cc:361 #39 MessageLoop::Run() (this=<optimized out>) at ./ipc/chromium/src/base/message_loop.cc:343 #40 0x00007fffed3c8f48 in nsBaseAppShell::Run() (this=0x7fffe76d4a00) at ./widget/nsBaseAppShell.cpp:148 #41 0x00007fffee8a6a88 in nsAppStartup::Run() (this=0x7fffe7674610) at ./build-browser/dist/include/nsCOMPtr.h:747 #42 0x00007fffee9e2da8 in XREMain::XRE_mainRun() (this=this@entry=0x7fffffffd4b8) at ./toolkit/xre/nsAppRunner.cpp:5649 #43 0x00007fffee9e3c38 in XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) (this=this@entry=0x7fffffffd4b8, argc=argc@entry=1, argv=argv@entry=0x7fffffffecc8, aConfig=...) at ./toolkit/xre/nsAppRunner.cpp:5849 #44 0x00007fffee9e447c in XRE_main(int, char**, mozilla::BootstrapConfig const&) (argc=1, argv=0x7fffffffecc8, aConfig=...) at ./toolkit/xre/nsAppRunner.cpp:5905 #45 0x00007fffee9e5f0c in mozilla::BootstrapImpl::XRE_main(int, char**, mozilla::BootstrapConfig const&) (this=<optimized out>, argc=<optimized out>, argv=<optimized out>, aConfig=<optimized out>) at ./toolkit/xre/Bootstrap.cpp:45 #46 0x0000000100010f40 in do_main(int, char**, char**) (argc=<optimized out>, argv=<optimized out>, envp=envp@entry=0x7fffffffecd8) at ./browser/app/nsBrowserApp.cpp:227 #47 0x000000010000fdec in main(int, char**, char**) (argc=<optimized out>, argv=<optimized out>, envp=0x7fffffffecd8) at ./browser/app/nsBrowserApp.cpp:445