Bug: bus error - style::gecko::wrapper::GeckoElement::flags [Solaris SPARC]
Status: RESOLVED
Priority: --
Resolution: WORKSFORME
Created: 2021-09-06 07:05:55+00:00
Resolved: 2022-03-21 09:43:25+00:00

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0

Steps to reproduce:

When starting Firefox 91 on Solaris SPARC:

```
# firefox
Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: libpci missing (t=235.674) [GFX1-]: glxtest: libpci missing
[Parent 3346, Main Thread] WARNING: NS_ENSURE_TRUE(rootFrame) failed: file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/dom/base/nsGlobalWindowOuter.cpp:4244
[Parent 3346, Main Thread] WARNING: Can't get nsINetworkLinkService.: file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/dom/media/VideoUtils.cpp:760
[Parent 3346, Main Thread] WARNING: Can't get nsINetworkLinkService.: file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/dom/media/VideoUtils.cpp:760
Warning: asking to enable_gpu_markers but no supporting extension was found
[Child 3351, Main Thread] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80040111 (NS_ERROR_NOT_AVAILABLE): file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/caps/BasePrincipal.cpp:1328
[Child 3351, Main Thread] WARNING: 'NS_FAILED(rv)', file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/dom/storage/LocalStorageManager.cpp:160
[Child 3351, IPC I/O Child] WARNING: [50D22CB068309996.1D1F26CA28ED1CE6]: Ignoring message 'EVENT_MESSAGE' to peer 1.1 due to a missing broker: file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/ipc/glue/NodeController.cpp:295
[Child 3351, IPC I/O Child] WARNING: [50D22CB068309996.1D1F26CA28ED1CE6]: Ignoring message 'EVENT_MESSAGE' to peer 1.1 due to a missing broker: file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/ipc/glue/NodeController.cpp:295
[Child 3351, IPC I/O Child] WARNING: [50D22CB068309996.1D1F26CA28ED1CE6]: Ignoring message 'EVENT_MESSAGE' to peer 1.1 due to a missing broker: file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/ipc/glue/NodeController.cpp:295
[Child 3351, IPC I/O Child] WARNING: [50D22CB068309996.1D1F26CA28ED1CE6]: Ignoring message 'EVENT_MESSAGE' to peer 1.1 due to a missing broker: file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/ipc/glue/NodeController.cpp:295
[Child 3351, IPC I/O Child] WARNING: [50D22CB068309996.1D1F26CA28ED1CE6]: Ignoring message 'EVENT_MESSAGE' to peer 1.1 due to a missing broker: file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/ipc/glue/NodeController.cpp:295
[Child 3351, IPC I/O Child] WARNING: [50D22CB068309996.1D1F26CA28ED1CE6]: Ignoring message 'EVENT_MESSAGE' to peer 1.1 due to a missing broker: file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/ipc/glue/NodeController.cpp:295
[Child 3351, IPC I/O Child] WARNING: [50D22CB068309996.1D1F26CA28ED1CE6]: Ignoring message 'EVENT_MESSAGE' to peer 1.1 due to a missing broker: file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/ipc/glue/NodeController.cpp:295
[Child 3351, IPC I/O Child] WARNING: [50D22CB068309996.1D1F26CA28ED1CE6]: Ignoring message 'EVENT_MESSAGE' to peer 1.1 due to a missing broker: file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/ipc/glue/NodeController.cpp:295
[Child 3351, IPC I/O Child] WARNING: [50D22CB068309996.1D1F26CA28ED1CE6]: Ignoring message 'EVENT_MESSAGE' to peer 1.1 due to a missing broker: file /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/ipc/glue/NodeController.cpp:295
Exiting due to channel error.
Bus Error (core dumped)
```
Following is on stack:

```
#0  0x00007c8600271580 in style::gecko::wrapper::GeckoElement::flags (self=0x7cc0b8dc4cc8)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/servo/components/style/gecko/wrapper.rs:653
#1  0x00007c86002cad3c in style::gecko::wrapper::{{impl}}::has_dirty_descendants (self=0x7cc0b8dc4b78)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/servo/components/style/gecko/wrapper.rs:1386
#2  0x00007c86003d6840 in geckoservo::glue::Servo_AssertTreeIsClean::assert_subtree_is_clean (el=...) at servo/ports/geckolib/glue.rs:5962
#3  0x00007c86003d6ab0 in geckoservo::glue::Servo_AssertTreeIsClean::assert_subtree_is_clean (el=...) at servo/ports/geckolib/glue.rs:5970
#4  0x00007c86003d6ab0 in geckoservo::glue::Servo_AssertTreeIsClean::assert_subtree_is_clean (el=...) at servo/ports/geckolib/glue.rs:5970
#5  0x00007c86003d6ab0 in geckoservo::glue::Servo_AssertTreeIsClean::assert_subtree_is_clean (el=...) at servo/ports/geckolib/glue.rs:5970
#6  0x00007c86003d6ab0 in geckoservo::glue::Servo_AssertTreeIsClean::assert_subtree_is_clean (el=...) at servo/ports/geckolib/glue.rs:5970
#7  0x00007c86003d6ab0 in geckoservo::glue::Servo_AssertTreeIsClean::assert_subtree_is_clean (el=...) at servo/ports/geckolib/glue.rs:5970
#8  0x00007c86003d6ab0 in geckoservo::glue::Servo_AssertTreeIsClean::assert_subtree_is_clean (el=...) at servo/ports/geckolib/glue.rs:5970
#9  0x00007c86003d6ab0 in geckoservo::glue::Servo_AssertTreeIsClean::assert_subtree_is_clean (el=...) at servo/ports/geckolib/glue.rs:5970
#10 0x00007c86003d6ab0 in geckoservo::glue::Servo_AssertTreeIsClean::assert_subtree_is_clean (el=...) at servo/ports/geckolib/glue.rs:5970
#11 0x00007c86003d6ab0 in geckoservo::glue::Servo_AssertTreeIsClean::assert_subtree_is_clean (el=...) at servo/ports/geckolib/glue.rs:5970
#12 0x00007c86003d680c in geckoservo::glue::Servo_AssertTreeIsClean (root=0x7c85cc3023e0) at servo/ports/geckolib/glue.rs:5975
#13 0x00007c85f9184638 in mozilla::ServoStyleSet::AssertTreeIsClean() (this=0x7c85cbffb800)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/layout/style/ServoStyleSet.cpp:960
#14 0x00007c85f92faf90 in mozilla::RestyleManager::DoProcessPendingRestyles(mozilla::ServoTraversalFlags) (this=0x7c85cc514780, aFlags=mozilla::ServoTraversalFlags::Empty)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/layout/base/RestyleManager.cpp:3096
#15 0x00007c85f92fb278 in mozilla::RestyleManager::ProcessPendingRestyles() (this=0x7c85cc514780)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/layout/base/RestyleManager.cpp:3130
#16 0x00007c85f92bf720 in mozilla::PresShell::DoFlushPendingNotifications(mozilla::ChangesToFlush) (this=0x7c85cc512000, aFlush=...)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/layout/base/PresShell.cpp:4213
#17 0x00007c85f47e94b4 in mozilla::PresShell::FlushPendingNotifications(mozilla::ChangesToFlush) (this=0x7c85cc512000, aType=...)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/build/sparcv9/dist/include/mozilla/PresShell.h:1413
#18 0x00007c85f92be4bc in mozilla::PresShell::DoFlushPendingNotifications(mozilla::FlushType) (this=0x7c85cc512000, aType=mozilla::FlushType::InterruptibleLayout)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/layout/base/PresShell.cpp:4030
#19 0x00007c85f4bfb4d0 in mozilla::PresShell::FlushPendingNotifications(mozilla::FlushType) (this=0x7c85cc512000, aType=mozilla::FlushType::InterruptibleLayout)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/build/sparcv9/dist/include/mozilla/PresShell.h:1404
#20 0x00007c85f92be26c in mozilla::PresShell::HandlePostedReflowCallbacks(bool) (this=0x7c85cc512000, aInterruptible=true)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/layout/base/PresShell.cpp:3998
#21 0x00007c85f92dd4ac in mozilla::PresShell::DidDoReflow(bool) (this=0x7c85cc512000, aInterruptible=true)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/layout/base/PresShell.cpp:9388
#22 0x00007c85f92dfdf4 in mozilla::PresShell::ProcessReflowCommands(bool) (this=0x7c85cc512000, aInterruptible=true)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/layout/base/PresShell.cpp:9778
#23 0x00007c85f92bf884 in mozilla::PresShell::DoFlushPendingNotifications(mozilla::ChangesToFlush) (this=0x7c85cc512000, aFlush=...)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/layout/base/PresShell.cpp:4233
#24 0x00007c85f47e94b4 in mozilla::PresShell::FlushPendingNotifications(mozilla::ChangesToFlush) (this=0x7c85cc512000, aType=...)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/build/sparcv9/dist/include/mozilla/PresShell.h:1413
#25 0x00007c85f92515e4 in nsRefreshDriver::Tick(mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::TimeStamp, nsRefreshDriver::IsExtraTick)
    (this=0x7c85cc124000, aId=..., aNowTime=..., aIsExtraTick=nsRefreshDriver::IsExtraTick::No)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/layout/base/nsRefreshDriver.cpp:2329
#26 0x00007c85f924bafc in operator()() const (__closure=0x7c85c9670c38)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/layout/base/nsRefreshDriver.cpp:1525
#27 0x00007c85f926f3f0 in mozilla::detail::RunnableFunction<nsRefreshDriver::EnsureTimerStarted(nsRefreshDriver::EnsureTimerStartedFlags)::<lambda()> >::Run(void)
    (this=0x7c85c9670c20) at /builds/psumbera/userland-ff-90/components/desktop/firefox/build/sparcv9/dist/include/nsThreadUtils.h:532
#28 0x00007c85f18e1634 in mozilla::RunnableTask::Run() (this=0x7c85c9469a80)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/xpcom/threads/TaskController.cpp:502
#29 0x00007c85f18e312c in mozilla::TaskController::DoExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex&> const&)
    (this=0x7c8610f66000, aProofOfLock=...) at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/xpcom/threads/TaskController.cpp:805
#30 0x00007c85f18e2334 in mozilla::TaskController::ExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex&> const&)
    (this=0x7c8610f66000, aProofOfLock=...) at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/xpcom/threads/TaskController.cpp:641
#31 0x00007c85f18e11b4 in mozilla::TaskController::ProcessPendingMTTask(bool) (this=0x7c8610f66000, aMayWait=false)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/xpcom/threads/TaskController.cpp:425
#32 0x00007c85f18dfa5c in operator()() const (__closure=0x7c8610ffb938)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/xpcom/threads/TaskController.cpp:135
#33 0x00007c85f1944988 in mozilla::detail::RunnableFunction<mozilla::TaskController::InitializeInternal()::<lambda()> >::Run(void) (this=0x7c8610ffb920)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/xpcom/threads/nsThreadUtils.h:532
#34 0x00007c85f18fb190 in nsThread::ProcessNextEvent(bool, bool*) (this=0x7c8610ff01c0, aMayWait=false, aResult=0x7cc0b8dc87b7)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/xpcom/threads/nsThread.cpp:1152
#35 0x00007c85f190bc3c in NS_ProcessNextEvent(nsIThread*, bool) (aThread=0x7c8610ff01c0, aMayWait=false)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/xpcom/threads/nsThreadUtils.cpp:466
#36 0x00007c85f2a1c780 in mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) (this=0x7c85dca77e00, aDelegate=0x7c85dca83180)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/ipc/glue/MessagePump.cpp:85
#37 0x00007c85f2900a10 in MessageLoop::RunInternal() (this=0x7c85dca83180)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/ipc/chromium/src/base/message_loop.cc:331
#38 0x00007c85f2900938 in MessageLoop::RunHandler() (this=0x7c85dca83180)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/ipc/chromium/src/base/message_loop.cc:324
#39 0x00007c85f29008d8 in MessageLoop::Run() (this=0x7c85dca83180)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/ipc/chromium/src/base/message_loop.cc:306
#40 0x00007c85f8d0c12c in nsBaseAppShell::Run() (this=0x7c85dca29190)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/widget/nsBaseAppShell.cpp:137
#41 0x00007c85fb36633c in nsAppStartup::Run() () at /usr/lib/firefox/libxul.so
#42 0x00007c85fb5bd940 in XREMain::XRE_mainRun() (this=0x7cc0b8dc9170)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/toolkit/xre/nsAppRunner.cpp:5249
#43 0x00007c85fb5beb2c in XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) (this=0x7cc0b8dc9170, argc=1, argv=0x7cc0b8dc99d8, aConfig=...)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/toolkit/xre/nsAppRunner.cpp:5434
#44 0x00007c85fb5bee2c in XRE_main(int, char**, mozilla::BootstrapConfig const&) (argc=1, argv=0x7cc0b8dc99d8, aConfig=...)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/toolkit/xre/nsAppRunner.cpp:5493
#45 0x00007c85fb5cac6c in mozilla::BootstrapImpl::XRE_main(int, char**, mozilla::BootstrapConfig const&) (this=0x7c8610f467d0, argc=1, argv=0x7cc0b8dc99d8, aConfig=...)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/toolkit/xre/Bootstrap.cpp:45
#46 0x00007c8612478d48 in do_main(int, char**, char**) (argc=1, argv=0x7cc0b8dc99d8, envp=0x7cc0b8dc99e8)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/browser/app/nsBrowserApp.cpp:225
#47 0x00007c86124792c8 in main(int, char**, char**) (argc=1, argv=0x7cc0b8dc99d8, envp=0x7cc0b8dc99e8)
    at /builds/psumbera/userland-ff-90/components/desktop/firefox/firefox-91.0/browser/app/nsBrowserApp.cpp:381
```