If you think a bug might affect users in the 57 release, please set the correct tracking and status flags for Release Management.

stylo: "Not really ordered" panic on latest mozilla-central merge

RESOLVED FIXED

Status

()

Core
CSS Parsing and Computation
RESOLVED FIXED
8 months ago
8 months ago

People

(Reporter: heycam, Assigned: emilio)

Tracking

(Blocks: 1 bug)

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

8 months ago
With the latest mozilla-central merge I'm trying, I run into this panic fairly early:

thread '<unnamed>' panicked at 'Not really ordered', /z/stylo/hg-incubator/servo/components/style/rule_tree/mod.rs:167
   1:     0x7f4cbb0ce14f - std::sys::backtrace::tracing::imp::write::hd6ece0fd16ebfe06
   2:     0x7f4cbb0dd6ad - std::panicking::default_hook::{{closure}}::h523f1cb7f97bbc83
   3:     0x7f4cbb0dac0a - std::panicking::default_hook::hc3c81c24cdcc8c31
   4:     0x7f4cbb0db208 - std::panicking::rust_panic_with_hook::hf4b937f570e0ba05
   5:     0x7f4cba58d923 - std::panicking::begin_panic::hcb26c0e753df7acf
                        at /buildslave/rust-buildbot/slave/beta-dist-rustc-linux/build/obj/../src/libstd/panicking.rs:413
   6:     0x7f4cba89b3ba - style::rule_tree::RuleTree::insert_ordered_rules_from::h1f5f2818d83173b5
                        at /z/stylo/hg-incubator/servo/components/style/rule_tree/mod.rs:167
   7:     0x7f4cba89b236 - style::rule_tree::RuleTree::insert_ordered_rules::h8fe28f86480dddfd
                        at /z/stylo/hg-incubator/servo/components/style/rule_tree/mod.rs:156
   8:     0x7f4cba8a172f - style::stylist::Stylist::precomputed_values_for_pseudo::h375f90bf3b9debd8
                        at /z/stylo/hg-incubator/servo/components/style/stylist.rs:308
   9:     0x7f4cba4c4dc0 - Servo_ComputedValues_GetForAnonymousBox
                        at /z/stylo/hg-incubator/servo/ports/geckolib/glue.rs:645
  10:     0x7f4cb70348cc - _ZN7mozilla13ServoStyleSet24ResolveAnonymousBoxStyleEP7nsIAtomP14nsStyleContextj
                        at /z/stylo/hg-incubator/layout/style/ServoStyleSet.cpp:306
  11:     0x7f4cb72a9456 - _ZN7mozilla14StyleSetHandle3Ptr24ResolveAnonymousBoxStyleEP7nsIAtomP14nsStyleContextj
                        at /z/stylo/hg-incubator/obj/dist/include/mozilla/StyleSetHandleInlines.h:126
  12:     0x7f4cb726e8f2 - _ZN21nsCSSFrameConstructor30SetUpDocElementContainingBlockEP10nsIContent
                        at /z/stylo/hg-incubator/layout/base/nsCSSFrameConstructor.cpp:2890
  13:     0x7f4cb726d181 - _ZN21nsCSSFrameConstructor24ConstructDocElementFrameEPN7mozilla3dom7ElementEP21nsILayoutHistoryState
                        at /z/stylo/hg-incubator/layout/base/nsCSSFrameConstructor.cpp:2413
  14:     0x7f4cb727c8e0 - _ZN21nsCSSFrameConstructor20ContentRangeInsertedEP10nsIContentS1_S1_P21nsILayoutHistoryStateb
                        at /z/stylo/hg-incubator/layout/base/nsCSSFrameConstructor.cpp:7749
  15:     0x7f4cb727bc27 - _ZN21nsCSSFrameConstructor15ContentInsertedEP10nsIContentS1_P21nsILayoutHistoryStateb
                        at /z/stylo/hg-incubator/layout/base/nsCSSFrameConstructor.cpp:7635
  16:     0x7f4cb7204869 - _ZN7mozilla9PresShell10InitializeEii
                        at /z/stylo/hg-incubator/layout/base/PresShell.cpp:1799
  17:     0x7f4cb4aa02fc - _ZN13nsContentSink11StartLayoutEb
                        at /z/stylo/hg-incubator/dom/base/nsContentSink.cpp:1237
  18:     0x7f4cb605b04a - _ZN15HTMLContentSink8OpenBodyEv
                        at /z/stylo/hg-incubator/dom/html/nsHTMLContentSink.cpp:911
  19:     0x7f4cb605b1cd - _ZN15HTMLContentSink13OpenContainerEN18nsIHTMLContentSink11ElementTypeE
                        at /z/stylo/hg-incubator/dom/html/nsHTMLContentSink.cpp:933
  20:     0x7f4cb41d19f2 - _ZN7CNavDTD10BuildModelEP12nsITokenizerP14nsIContentSink
                        at /z/stylo/hg-incubator/parser/htmlparser/CNavDTD.cpp:44
  21:     0x7f4cb41dd027 - _ZN8nsParser10BuildModelEv
                        at /z/stylo/hg-incubator/parser/htmlparser/nsParser.cpp:1561
  22:     0x7f4cb41db949 - _ZN8nsParser11ResumeParseEbbb
                        at /z/stylo/hg-incubator/parser/htmlparser/nsParser.cpp:1464
  23:     0x7f4cb41ddb4d - _ZN8nsParser13OnStopRequestEP10nsIRequestP11nsISupports8nsresult
                        at /z/stylo/hg-incubator/parser/htmlparser/nsParser.cpp:1880
  24:     0x7f4cb4159b3d - _ZN18nsDocumentOpenInfo13OnStopRequestEP10nsIRequestP11nsISupports8nsresult
                        at /z/stylo/hg-incubator/uriloader/base/nsURILoader.cpp:338
  25:     0x7f4cb3000f11 - _ZN13nsBaseChannel13OnStopRequestEP10nsIRequestP11nsISupports8nsresult
                        at /z/stylo/hg-incubator/netwerk/base/nsBaseChannel.cpp:827
  26:     0x7f4cb3032d87 - _ZN17nsInputStreamPump11OnStateStopEv
                        at /z/stylo/hg-incubator/netwerk/base/nsInputStreamPump.cpp:714
  27:     0x7f4cb3031d3b - _ZN17nsInputStreamPump18OnInputStreamReadyEP19nsIAsyncInputStream
                        at /z/stylo/hg-incubator/netwerk/base/nsInputStreamPump.cpp:433
  28:     0x7f4cb2e9ea08 - _ZN23nsInputStreamReadyEvent3RunEv
                        at /z/stylo/hg-incubator/xpcom/io/nsStreamUtils.cpp:96
  29:     0x7f4cb2ef293c - _ZN8nsThread16ProcessNextEventEbPb
                        at /z/stylo/hg-incubator/xpcom/threads/nsThread.cpp:1261
  30:     0x7f4cb2ef0adb - _Z19NS_ProcessNextEventP9nsIThreadb
                        at /z/stylo/hg-incubator/xpcom/threads/nsThreadUtils.cpp:389
  31:     0x7f4cb37bdc0e - _ZN7mozilla3ipc11MessagePump3RunEPN4base11MessagePump8DelegateE
                        at /z/stylo/hg-incubator/ipc/glue/MessagePump.cpp:96
  32:     0x7f4cb37be8f2 - _ZN7mozilla3ipc26MessagePumpForChildProcess3RunEPN4base11MessagePump8DelegateE
                        at /z/stylo/hg-incubator/ipc/glue/MessagePump.cpp:301
  33:     0x7f4cb371b024 - _ZN11MessageLoop11RunInternalEv
                        at /z/stylo/hg-incubator/ipc/chromium/src/base/message_loop.cc:238
  34:     0x7f4cb371afa4 - _ZN11MessageLoop10RunHandlerEv
                        at /z/stylo/hg-incubator/ipc/chromium/src/base/message_loop.cc:231
  35:     0x7f4cb371af7c - _ZN11MessageLoop3RunEv
                        at /z/stylo/hg-incubator/ipc/chromium/src/base/message_loop.cc:211
  36:     0x7f4cb6de7ae2 - _ZN14nsBaseAppShell3RunEv
                        at /z/stylo/hg-incubator/widget/nsBaseAppShell.cpp:156
  37:     0x7f4cb80f54d6 - _Z15XRE_RunAppShellv
                        at /z/stylo/hg-incubator/toolkit/xre/nsEmbedFunctions.cpp:852
  38:     0x7f4cb37be750 - _ZN7mozilla3ipc26MessagePumpForChildProcess3RunEPN4base11MessagePump8DelegateE
                        at /z/stylo/hg-incubator/ipc/glue/MessagePump.cpp:269
  39:     0x7f4cb371b024 - _ZN11MessageLoop11RunInternalEv
                        at /z/stylo/hg-incubator/ipc/chromium/src/base/message_loop.cc:238
  40:     0x7f4cb371afa4 - _ZN11MessageLoop10RunHandlerEv
                        at /z/stylo/hg-incubator/ipc/chromium/src/base/message_loop.cc:231
  41:     0x7f4cb371af7c - _ZN11MessageLoop3RunEv
                        at /z/stylo/hg-incubator/ipc/chromium/src/base/message_loop.cc:211
  42:     0x7f4cb80f4e45 - _Z20XRE_InitChildProcessiPPcPK12XREChildData
                        at /z/stylo/hg-incubator/toolkit/xre/nsEmbedFunctions.cpp:684
  43:     0x7f4cb8106546 - _ZN7mozilla13BootstrapImpl20XRE_InitChildProcessEiPPcPK12XREChildData
                        at /z/stylo/hg-incubator/toolkit/xre/Bootstrap.cpp:65
  44:           0x405a49 - _Z20content_process_mainPN7mozilla9BootstrapEiPPc
                        at /z/stylo/hg-incubator/browser/app/../../ipc/contentproc/plugin-container.cpp:64
  45:           0x405b25 - main
                        at /z/stylo/hg-incubator/browser/app/nsBrowserApp.cpp:284
  46:     0x7f4cc73d482f - __libc_start_main
  47:           0x4058f8 - _start
  48:                0x0 - <unknown>
Flags: needinfo?(emilio+bugs)
(Assignee)

Comment 1

8 months ago
This is a pre-existing bug btw, that assertion I added only exposed it, so removing that assertion in the merge should be somehow ok.

The problem is that the important and normal declarations are intermingled in Stylist::get_universal_rules. They need to be sorted.

I'm not sure I'll have the time to fix this today though :(
(Reporter)

Comment 2

8 months ago
OK thanks.  I'll disable it in the merge.
(Assignee)

Comment 3

8 months ago
https://github.com/servo/servo/pull/15459
Assignee: nobody → emilio+bugs
Flags: needinfo?(emilio+bugs)
(Assignee)

Comment 4

8 months ago
Fixed upstream now, should no longer be in the next merge.
Status: NEW → RESOLVED
Last Resolved: 8 months ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.