Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

panic: cannot access a TLS value during or after it is destroyed: AccessError #21453

Open
mateon1 opened this issue Aug 18, 2018 · 4 comments
Open

Comments

@mateon1
Copy link
Contributor

@mateon1 mateon1 commented Aug 18, 2018

This test case does not touch the network at all, which is why this panic is extremely confusing.

Minimal panicking testcase:

<style>
  menu { border:solid; }
</style>
<details open style="white-space:pre">
<menu style="display:inline; border-image:url()">
<span id="span">
<script>
  var span = document.getElementById("span");
  span.clientTop;
  span.textContent = "";
  window.gc();
  document.createEvent("");
</script>

panics:

cannot access a TLS value during or after it is destroyed: AccessError (thread ScriptThread PipelineId { namespace_id: PipelineNamespaceId(1), index: PipelineIndex(1) }, at libcore/result.rs:945)
Full backtrace
$ ../../rust/servo/mach run -dz -f seed.html
VMware, Inc.
softpipe
3.3 (Core Profile) Mesa 18.1.0-devel
ERROR 2018-08-18T17:11:25Z: script::dom::bindings::error: Error at :0:0 NotSupportedError: The operation is not supported.
cannot access a TLS value during or after it is destroyed: AccessError (thread ScriptThread PipelineId { namespace_id: PipelineNamespaceId(1), index: PipelineIndex(1) }, at libcore/result.rs:945)
stack backtrace:
   0:     0x556d09d0f0a5 - backtrace::backtrace::libunwind::trace::hc38180d489d66153
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/backtrace/libunwind.rs:53
                         - backtrace::backtrace::trace::h78a15d6884d51e5b
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/backtrace/mod.rs:42
   1:     0x556d09d0ce6e - backtrace::capture::Backtrace::new::h9229778bab1a1cd5
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/capture.rs:64
   2:     0x556d026f3389 - servo::main::{{closure}}::he264d6b764632c29
                        at ports/servo/non_android_main.rs:122
   3:     0x556d09d49f73 - std::panicking::rust_panic_with_hook::h75f53ae1ba39714f
                        at libstd/panicking.rs:479
   4:     0x556d09d49b19 - std::panicking::continue_panic_fmt::h5f5c2db8ab083e0d
                        at libstd/panicking.rs:390
   5:     0x556d09d49a15 - rust_begin_unwind
                        at libstd/panicking.rs:325
   6:     0x556d09d6bbdb - core::panicking::panic_fmt::h28ab0e0b2f3bdb57
                        at libcore/panicking.rs:77
   7:     0x556d09c3440b - core::result::unwrap_failed::h23ba6210daaae459
                        at /checkout/src/libcore/macros.rs:26
   8:     0x556d0307bf35 - <core::result::Result<T, E>>::expect::hc37e68e270de6465
                        at /checkout/src/libcore/result.rs:809
   9:     0x556d04b65624 - <std::thread::local::LocalKey<T>>::with::h0d01692dea1dcec1
                        at /checkout/src/libstd/thread/local.rs:248
  10:     0x556d03f44a40 - <script::dom::bindings::root::Root<T>>::new::hd3e7ed29a7fedcf1
                        at components/script/dom/bindings/root.rs:68
  11:     0x556d03f70f91 - <script::dom::bindings::root::Root<script::dom::bindings::root::Dom<T>>>::from_ref::h92daf0e507c1b9cd
                        at components/script/dom/bindings/root.rs:155
  12:     0x556d043b1978 - script::dom::node::from_untrusted_node_address::h1335b68d41539f63
                        at components/script/dom/node.rs:1005
  13:     0x556d034e78a2 - script::dom::window::Window::force_reflow::hfbc60c32bc6fa4ac
                        at components/script/dom/window.rs:1397
  14:     0x556d034e86d8 - script::dom::window::Window::reflow::ha4c1149e1aed5ca7
                        at components/script/dom/window.rs:1443
  15:     0x556d04514d35 - script::dom::document::Document::finish_load::hb8f036cd4bc17c2e
                        at components/script/dom/document.rs:1621
  16:     0x556d039c139b - script::dom::servoparser::ServoParser::finish::h23f2eb563e28c3f4
                        at components/script/dom/servoparser/mod.rs:508
  17:     0x556d039c0d56 - script::dom::servoparser::ServoParser::do_parse_sync::h834c92cd40dc4db1
                        at components/script/dom/servoparser/mod.rs:442
  18:     0x556d044f6c20 - script::dom::servoparser::ServoParser::parse_sync::{{closure}}::ha8e190e695a5d558
                        at components/script/dom/servoparser/mod.rs:419
  19:     0x556d04061533 - profile_traits::time::profile::h732b888a7c346e33
                        at /shared/dev/rust/servo/components/profile_traits/time.rs:134
  20:     0x556d039c0993 - script::dom::servoparser::ServoParser::parse_sync::h047d1cb54787997b
                        at components/script/dom/servoparser/mod.rs:416
  21:     0x556d039c46a5 - <script::dom::servoparser::ParserContext as net_traits::FetchResponseListener>::process_response_eof::h51e5d93138da5fef
                        at components/script/dom/servoparser/mod.rs:745
  22:     0x556d03d07f9d - script::script_thread::ScriptThread::handle_fetch_eof::h85faca36fb139f76
                        at components/script/script_thread.rs:2605
  23:     0x556d03cebced - script::script_thread::ScriptThread::handle_msg_from_constellation::h21b96db506a978b7
                        at components/script/script_thread.rs:1309
  24:     0x556d03ed4b9c - script::script_thread::ScriptThread::handle_msgs::{{closure}}::h8bad1fee06535610
                        at components/script/script_thread.rs:1111
  25:     0x556d03ed8167 - script::script_thread::ScriptThread::profile_event::hf1c778ce5c3dcccc
                        at components/script/script_thread.rs:1286
  26:     0x556d03ce7ef5 - script::script_thread::ScriptThread::handle_msgs::hda35bf02bfbaf6b0
                        at components/script/script_thread.rs:1105
  27:     0x556d03ce5156 - script::script_thread::ScriptThread::start::h56f336c7b8763b1a
                        at components/script/script_thread.rs:937
  28:     0x556d03ed1a70 - <script::script_thread::ScriptThread as script_traits::ScriptThreadFactory>::create::{{closure}}::{{closure}}::h48d2d1b326024676
                        at components/script/script_thread.rs:596
  29:     0x556d0499fecb - profile_traits::mem::ProfilerChan::run_with_memory_reporting::hb57e41f249b238c5
                        at /shared/dev/rust/servo/components/profile_traits/mem.rs:72
  30:     0x556d03ed21d8 - <script::script_thread::ScriptThread as script_traits::ScriptThreadFactory>::create::{{closure}}::he6630a4a80bfce57
                        at components/script/script_thread.rs:595
  31:     0x556d057a57c6 - std::sys_common::backtrace::__rust_begin_short_backtrace::hf65c7e18c41d0180
                        at /checkout/src/libstd/sys_common/backtrace.rs:136
  32:     0x556d04f7de94 - std::thread::Builder::spawn::{{closure}}::{{closure}}::h14287f4e715a0bb6
                        at /checkout/src/libstd/thread/mod.rs:409
  33:     0x556d057230c4 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hac3ff334a47d5c2c
                        at /checkout/src/libstd/panic.rs:313
  34:     0x556d0591dcc9 - std::panicking::try::do_call::h1859f1dc50402b13
                        at /checkout/src/libstd/panicking.rs:310
  35:     0x556d09d5b7a9 - __rust_maybe_catch_panic
                        at libpanic_unwind/lib.rs:106
  36:     0x556d058e7830 - std::panicking::try::he25c140619154546
                        at /checkout/src/libstd/panicking.rs:289
  37:     0x556d0577d646 - std::panic::catch_unwind::he6ebfcbf7caad1a9
                        at /checkout/src/libstd/panic.rs:392
  38:     0x556d04f7c852 - std::thread::Builder::spawn::{{closure}}::h5dc199d6a5476ee2
                        at /checkout/src/libstd/thread/mod.rs:408
  39:     0x556d04f7e3f4 - <F as alloc::boxed::FnBox<A>>::call_box::hbff3be30e9f83d91
                        at /checkout/src/liballoc/boxed.rs:640
  40:     0x556d09d3486a - <alloc::boxed::Box<(dyn alloc::boxed::FnBox<A, Output$u3d$R$GT$$u20$$u2b$$u20$$u27$a$RP$$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::h3757e4bb61b80a30
                        at /checkout/src/liballoc/boxed.rs:650
                         - std::sys_common::thread::start_thread::h9710965ece577cf4
                        at libstd/sys_common/thread.rs:24
  41:     0x556d09d32af5 - std::sys::unix::thread::Thread::new::thread_start::h661e40e1cea4ad5b
                        at libstd/sys/unix/thread.rs:90
  42:     0x7f39a3a2bf29 - start_thread
  43:     0x7f39a24d2ede - __clone
  44:                0x0 - <unknown>
ERROR 2018-08-18T17:11:27Z: servo: cannot access a TLS value during or after it is destroyed: AccessError
Pipeline failed in hard-fail mode.  Crashing!
Servo exited with return value 1

Note: If you do not run servo with the -f (hard fail) flag, Servo outputs this panic message forever in a loop:

called `Result::unwrap()` on an `Err` value: () (thread ScriptThread PipelineId { namespace_id: PipelineNamespaceId(1), index: PipelineIndex(2) }, at libcore/result.rs:945)
stack backtrace:
   0:     0x55b263b220a5 - backtrace::backtrace::libunwind::trace::hc38180d489d66153
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/backtrace/libunwind.rs:53
                         - backtrace::backtrace::trace::h78a15d6884d51e5b
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/backtrace/mod.rs:42
   1:     0x55b263b1fe6e - backtrace::capture::Backtrace::new::h9229778bab1a1cd5
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/capture.rs:64
   2:     0x55b25c506389 - servo::main::{{closure}}::he264d6b764632c29
                        at ports/servo/non_android_main.rs:122
   3:     0x55b263b5cf73 - std::panicking::rust_panic_with_hook::h75f53ae1ba39714f
                        at libstd/panicking.rs:479
   4:     0x55b263b5cb19 - std::panicking::continue_panic_fmt::h5f5c2db8ab083e0d
                        at libstd/panicking.rs:390
   5:     0x55b263b5ca15 - rust_begin_unwind
                        at libstd/panicking.rs:325
   6:     0x55b263b7ebdb - core::panicking::panic_fmt::h28ab0e0b2f3bdb57
                        at libcore/panicking.rs:77
   7:     0x55b260410e3b - core::result::unwrap_failed::had299b03fe1df828
                        at /checkout/src/libcore/macros.rs:26
   8:     0x55b25cea43d2 - <core::result::Result<T, E>>::unwrap::h68a086a9ab580b25
                        at /checkout/src/libcore/result.rs:782
   9:     0x55b25e1d6136 - script::script_runtime::new_rt_and_cx::h2c890130c5f4e1ce
                        at components/script/script_runtime.rs:147
  10:     0x55b25daf64fe - script::script_thread::ScriptThread::new::hd453f7994bd4d073
                        at components/script/script_thread.rs:838
  11:     0x55b25dce4d36 - <script::script_thread::ScriptThread as script_traits::ScriptThreadFactory>::create::{{closure}}::he6630a4a80bfce57
                        at components/script/script_thread.rs:579
  12:     0x55b25f5b87c6 - std::sys_common::backtrace::__rust_begin_short_backtrace::hf65c7e18c41d0180
                        at /checkout/src/libstd/sys_common/backtrace.rs:136
  13:     0x55b25ed90e94 - std::thread::Builder::spawn::{{closure}}::{{closure}}::h14287f4e715a0bb6
                        at /checkout/src/libstd/thread/mod.rs:409
  14:     0x55b25f5360c4 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hac3ff334a47d5c2c
                        at /checkout/src/libstd/panic.rs:313
  15:     0x55b25f730cc9 - std::panicking::try::do_call::h1859f1dc50402b13
                        at /checkout/src/libstd/panicking.rs:310
  16:     0x55b263b6e7a9 - __rust_maybe_catch_panic
                        at libpanic_unwind/lib.rs:106
  17:     0x55b25f6fa830 - std::panicking::try::he25c140619154546
                        at /checkout/src/libstd/panicking.rs:289
  18:     0x55b25f590646 - std::panic::catch_unwind::he6ebfcbf7caad1a9
                        at /checkout/src/libstd/panic.rs:392
  19:     0x55b25ed8f852 - std::thread::Builder::spawn::{{closure}}::h5dc199d6a5476ee2
                        at /checkout/src/libstd/thread/mod.rs:408
  20:     0x55b25ed913f4 - <F as alloc::boxed::FnBox<A>>::call_box::hbff3be30e9f83d91
                        at /checkout/src/liballoc/boxed.rs:640
  21:     0x55b263b4786a - <alloc::boxed::Box<(dyn alloc::boxed::FnBox<A, Output$u3d$R$GT$$u20$$u2b$$u20$$u27$a$RP$$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::h3757e4bb61b80a30
                        at /checkout/src/liballoc/boxed.rs:650
                         - std::sys_common::thread::start_thread::h9710965ece577cf4
                        at libstd/sys_common/thread.rs:24
  22:     0x55b263b45af5 - std::sys::unix::thread::Thread::new::thread_start::h661e40e1cea4ad5b
                        at libstd/sys/unix/thread.rs:90
  23:     0x7f3422466f29 - start_thread
  24:     0x7f3420f0dede - __clone
  25:                0x0 - <unknown>
ERROR 2018-08-18T17:17:49Z: servo: called `Result::unwrap()` on an `Err` value: ()
called `Result::unwrap()` on an `Err` value: () (thread ScriptThread PipelineId { namespace_id: PipelineNamespaceId(1), index: PipelineIndex(3) }, at libcore/result.rs:945)
stack backtrace:
   0:     0x55b263b220a5 - backtrace::backtrace::libunwind::trace::hc38180d489d66153
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/backtrace/libunwind.rs:53
                         - backtrace::backtrace::trace::h78a15d6884d51e5b
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/backtrace/mod.rs:42
   1:     0x55b263b1fe6e - backtrace::capture::Backtrace::new::h9229778bab1a1cd5
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/capture.rs:64
   2:     0x55b25c506389 - servo::main::{{closure}}::he264d6b764632c29
                        at ports/servo/non_android_main.rs:122
   3:     0x55b263b5cf73 - std::panicking::rust_panic_with_hook::h75f53ae1ba39714f
                        at libstd/panicking.rs:479
   4:     0x55b263b5cb19 - std::panicking::continue_panic_fmt::h5f5c2db8ab083e0d
                        at libstd/panicking.rs:390
   5:     0x55b263b5ca15 - rust_begin_unwind
                        at libstd/panicking.rs:325
   6:     0x55b263b7ebdb - core::panicking::panic_fmt::h28ab0e0b2f3bdb57
                        at libcore/panicking.rs:77
   7:     0x55b260410e3b - core::result::unwrap_failed::had299b03fe1df828
                        at /checkout/src/libcore/macros.rs:26
   8:     0x55b25cea43d2 - <core::result::Result<T, E>>::unwrap::h68a086a9ab580b25
                        at /checkout/src/libcore/result.rs:782
   9:     0x55b25e1d6136 - script::script_runtime::new_rt_and_cx::h2c890130c5f4e1ce
                        at components/script/script_runtime.rs:147
  10:     0x55b25daf64fe - script::script_thread::ScriptThread::new::hd453f7994bd4d073
                        at components/script/script_thread.rs:838
...
  23:     0x7f3422466f29 - start_thread
  24:     0x7f3420f0dede - __clone
  25:                0x0 - <unknown>
ERROR 2018-08-18T17:17:49Z: servo: called `Result::unwrap()` on an `Err` value: ()
called `Result::unwrap()` on an `Err` value: () (thread ScriptThread PipelineId { namespace_id: PipelineNamespaceId(1), index: PipelineIndex(4) }, at libcore/result.rs:945)
stack backtrace:
   0:     0x55b263b220a5 - backtrace::backtrace::libunwind::trace::hc38180d489d66153
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/backtrace/libunwind.rs:53
...
ERROR 2018-08-18T17:17:49Z: servo: called `Result::unwrap()` on an `Err` value: ()
called `Result::unwrap()` on an `Err` value: () (thread ScriptThread PipelineId { namespace_id: PipelineNamespaceId(1), index: PipelineIndex(5) }, at libcore/result.rs:945)
stack backtrace:
   0:     0x55b263b220a5 - backtrace::backtrace::libunwind::trace::hc38180d489d66153
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/backtrace/libunwind.rs:53
                         - backtrace::backtrace::trace::h78a15d6884d51e5b
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/backtrace/mod.rs:42
...
ERROR 2018-08-18T17:17:49Z: servo: called `Result::unwrap()` on an `Err` value: ()
called `Result::unwrap()` on an `Err` value: () (thread ScriptThread PipelineId { namespace_id: PipelineNamespaceId(1), index: PipelineIndex(6) }, at libcore/result.rs:945)
stack backtrace:
   0:     0x55b263b220a5 - backtrace::backtrace::libunwind::trace::hc38180d489d66153
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/backtrace/libunwind.rs:53
@jdm
Copy link
Member

@jdm jdm commented Aug 19, 2018

In this case TLS refers to thread-local storage.

@mateon1
Copy link
Contributor Author

@mateon1 mateon1 commented Aug 19, 2018

Using this testcase on commit 0c14880 (2018-03-29) triggers a different panic:

mateon@ceres:/shared/dev/rust/servo
$ setarch x86_64 -R ./mach run -dz -f ../../fuzz/domato/class/md5-48fbe03233183a4b6f368272ff827d34/test.html
VMware, Inc.
softpipe
3.3 (Core Profile) Mesa 17.4.0-devel
DomRefCell<T> already mutably borrowed: BorrowError (thread ScriptThread PipelineId { namespace_id: PipelineNamespaceId(0), index: PipelineIndex(NonZero(NonZero(1))) }, at libcore/result.rs:916)
stack backtrace:
   0:     0x55555dbce3b4 - backtrace::backtrace::libunwind::trace::ha3cdbcef574b9dc2
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/backtrace/libunwind.rs:53
                         - backtrace::backtrace::trace::he9053b6d49715d88
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/backtrace/mod.rs:42
   1:     0x55555dbc5b3c - backtrace::capture::Backtrace::new::h69c0fdf670d7d4cd
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.2/src/capture.rs:64
   2:     0x5555559bb6af - servo::main::{{closure}}::h149bf00d246e8067
                        at ports/servo/main.rs:147
   3:     0x55555dbe1785 - std::panicking::rust_panic_with_hook::haa00f5a9417cd684
                        at libstd/panicking.rs:577
   4:     0x55555dbe160e - std::panicking::begin_panic::ha956683198499384
                        at libstd/panicking.rs:537
   5:     0x55555dbe150a - std::panicking::begin_panic_fmt::h587e116719f14631
                        at libstd/panicking.rs:521
   6:     0x55555dbe14a2 - rust_begin_unwind
                        at libstd/panicking.rs:497
   7:     0x55555dc165b0 - core::panicking::panic_fmt::h1d64949939b0af2f
                        at libcore/panicking.rs:71
   8:     0x5555585da05b - core::result::unwrap_failed::h917895849b5ea964
                        at /checkout/src/libcore/macros.rs:23
   9:     0x55555856c1d4 - <core::result::Result<T, E>>::expect::h3513eddb45d34412
                        at /checkout/src/libcore/result.rs:809
  10:     0x55555821cea5 - <script::dom::bindings::cell::DomRefCell<T>>::borrow::h418c462ac1dccf9d
                        at components/script/dom/bindings/cell.rs:70
  11:     0x55555822b4e8 - <script::dom::bindings::cell::DomRefCell<T> as script::dom::bindings::trace::JSTraceable>::trace::h7830bb80b625cc00
                        at components/script/dom/bindings/trace.rs:214
  12:     0x555557724e28 - <script::script_thread::ScriptThread as script::dom::bindings::trace::JSTraceable>::trace::h93a121a546be527f
                        at components/script/script_thread.rs:388
  13:     0x5555579479d1 - script::script_thread::trace_thread::{{closure}}::h4845b8448d43b03c
                        at components/script/script_thread.rs:137
  14:     0x555558971de2 - <std::thread::local::LocalKey<T>>::try_with::h1633b97245259a3c
                        at /checkout/src/libstd/thread/local.rs:377
  15:     0x5555588d92dc - <std::thread::local::LocalKey<T>>::with::h184d6c69503898df
                        at /checkout/src/libstd/thread/local.rs:288
  16:     0x5555577035b3 - script::script_thread::trace_thread::hd63efec5f9c575be
                        at components/script/script_thread.rs:134
  17:     0x555557e07b6a - script::script_runtime::trace_rust_roots::h547efb880cb2d521
                        at components/script/script_runtime.rs:449
  18:     0x55555d7b3c7e - _ZN2js2gc9GCRuntime11markRuntimeEP8JSTracerNS1_18TraceOrMarkRuntimeERNS_26AutoLockForExclusiveAccessE
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/gc/RootMarking.cpp:343
  19:     0x55555d327c0d - _ZN2js2gc9GCRuntime14beginMarkPhaseEN2JS8gcreason6ReasonERNS_26AutoLockForExclusiveAccessE
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/jsgc.cpp:3907
  20:     0x55555d32eb04 - _ZN2js2gc9GCRuntime23incrementalCollectSliceERNS_11SliceBudgetEN2JS8gcreason6ReasonERNS_26AutoLockForExclusiveAccessE
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/jsgc.cpp:5889
  21:     0x55555d32f866 - _ZN2js2gc9GCRuntime7gcCycleEbRNS_11SliceBudgetEN2JS8gcreason6ReasonE
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/jsgc.cpp:6174
  22:     0x55555d32fda7 - _ZN2js2gc9GCRuntime7collectEbNS_11SliceBudgetEN2JS8gcreason6ReasonE
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/jsgc.cpp:6287
  23:     0x55555d330136 - _ZN2js2gc9GCRuntime2gcE18JSGCInvocationKindN2JS8gcreason6ReasonE
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/jsgc.cpp:6354
  24:     0x55555d26cc1a - _Z5JS_GCP9JSRuntime
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/jsapi.cpp:1340
  25:     0x555556e2f1be - <script::dom::window::Window as script::dom::bindings::codegen::Bindings::WindowBinding::WindowBinding::WindowMethods>::Gc::ha132059ce4977831
                        at components/script/dom/window.rs:808
  26:     0x5555574c449b - script::dom::bindings::codegen::Bindings::WindowBinding::WindowBinding::gc::{{closure}}::hc11d0dc10cb39e51
                        at /shared/dev/rust/servo/target/debug/build/script-6b6718ab84e0c242/out/Bindings/WindowBinding.rs:2689
  27:     0x55555695db9c - core::ops::function::FnOnce::call_once::he833c1f0be25326e
                        at /checkout/src/libcore/ops/function.rs:223
  28:     0x5555577602ba - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hcc4acff55a01076f
                        at /checkout/src/libstd/panic.rs:293
  29:     0x555557216894 - std::panicking::try::do_call::he3d9e4c9eca054cb
                        at /checkout/src/libstd/panicking.rs:479
  30:     0x55555dc0ad6e - __rust_maybe_catch_panic
                        at libpanic_unwind/lib.rs:102
  31:     0x5555571276a5 - std::panicking::try::h93f0deef19367698
                        at /checkout/src/libstd/panicking.rs:458
  32:     0x555557778221 - std::panic::catch_unwind::h21264e20826f8456
                        at /checkout/src/libstd/panic.rs:358
  33:     0x555556ab2b1e - mozjs::panic::wrap_panic::h593b98c26c549d20
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs-0.6.0/src/panic.rs:22
  34:     0x55555812169a - script::dom::bindings::codegen::Bindings::WindowBinding::WindowBinding::gc::hf01804d015bbd90f
                        at /shared/dev/rust/servo/target/debug/build/script-6b6718ab84e0c242/out/Bindings/WindowBinding.rs:2685
  35:     0x55555cec53be - CallJitMethodOp
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs-0.6.0/src/jsglue.cpp:560
  36:     0x55555729bb39 - script::dom::bindings::utils::generic_call::hc2459cd225ca9a0a
                        at components/script/dom/bindings/utils.rs:458
  37:     0x55555729bbab - script::dom::bindings::utils::generic_method::h74985f73157def27
                        at components/script/dom/bindings/utils.rs:466
  38:     0x55555d52f0e1 - _ZN2js12CallJSNativeEP9JSContextPFbS1_jPN2JS5ValueEERKNS2_8CallArgsE
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/jscntxtinlines.h:232
  39:     0x55555d4fe761 - _ZN2js23InternalCallOrConstructEP9JSContextRKN2JS8CallArgsENS_14MaybeConstructE
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/vm/Interpreter.cpp:453
  40:     0x55555d4fea88 - InternalCall
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/vm/Interpreter.cpp:498
  41:     0x55555d4feab2 - _ZN2js13CallFromStackEP9JSContextRKN2JS8CallArgsE
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/vm/Interpreter.cpp:504
  42:     0x55555d50baa0 - Interpret
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/vm/Interpreter.cpp:2873
  43:     0x55555d4fe3e2 - _ZN2js9RunScriptEP9JSContextRNS_8RunStateE
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/vm/Interpreter.cpp:399
  44:     0x55555d4ff7aa - _ZN2js13ExecuteKernelEP9JSContextN2JS6HandleIP8JSScriptEER8JSObjectRKNS2_5ValueENS_16AbstractFramePtrEPS9_
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/vm/Interpreter.cpp:679
  45:     0x55555d4ffa6a - _ZN2js7ExecuteEP9JSContextN2JS6HandleIP8JSScriptEER8JSObjectPNS2_5ValueE
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/vm/Interpreter.cpp:711
  46:     0x55555d278e2e - Evaluate
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/jsapi.cpp:4406
  47:     0x55555d27916a - Evaluate
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/jsapi.cpp:4443
  48:     0x55555d2796ec - _ZN2JS8EvaluateEP9JSContextRKNS_22ReadOnlyCompileOptionsEPKDsmNS_13MutableHandleINS_5ValueEEE
                        at /home/mateon/.cargo/registry/src/github.com-1ecc6299db9ec823/mozjs_sys-0.50.1/mozjs/js/src/jsapi.cpp:4501
  49:     0x55555810c4dc - mozjs::rust::wrappers::Evaluate2::h0248c6dddcc4cb6e
                        at components/script/lib.rs:1
  50:     0x55555863c944 - script::dom::globalscope::GlobalScope::evaluate_script_on_global_with_result::{{closure}}::he8c9f29caae6f2bd
                        at components/script/dom/globalscope.rs:438
  51:     0x555557ab2bf0 - profile_traits::time::profile::h84ced1b49a125322
                        at /shared/dev/rust/servo/components/profile_traits/time.rs:134
  52:     0x555557930e51 - script::dom::globalscope::GlobalScope::evaluate_script_on_global_with_result::h91d3f3e5e118005d
                        at components/script/dom/globalscope.rs:422
  53:     0x555558624347 - script::dom::htmlscriptelement::HTMLScriptElement::run_a_classic_script::h0b6141388480355c
                        at components/script/dom/htmlscriptelement.rs:569
  54:     0x555558623ce6 - script::dom::htmlscriptelement::HTMLScriptElement::execute::h121b886601b6d84c
                        at components/script/dom/htmlscriptelement.rs:539
  55:     0x555558621b50 - script::dom::htmlscriptelement::HTMLScriptElement::prepare::hc23ce7a231e15cec
                        at components/script/dom/htmlscriptelement.rs:452
  56:     0x555557f0587d - script::dom::servoparser::ServoParser::tokenize::h5833b5c4c0a507c0
                        at components/script/dom/servoparser/mod.rs:473
  57:     0x5555573d9537 - script::dom::servoparser::ServoParser::do_parse_sync::h9dc77b745682a3ea
                        at components/script/dom/servoparser/mod.rs:428
  58:     0x555557f0556f - script::dom::servoparser::ServoParser::parse_sync::{{closure}}::he01b21b2379ffb52
                        at components/script/dom/servoparser/mod.rs:414
  59:     0x555557ab3abc - profile_traits::time::profile::hb114593d5ee765e3
                        at /shared/dev/rust/servo/components/profile_traits/time.rs:134
  60:     0x5555573d929e - script::dom::servoparser::ServoParser::parse_sync::hf7f9305c0c471455
                        at components/script/dom/servoparser/mod.rs:411
  61:     0x5555573d97ed - script::dom::servoparser::ServoParser::parse_bytes_chunk::h64a847441162a5cb
                        at components/script/dom/servoparser/mod.rs:453
  62:     0x5555573dc1f3 - <script::dom::servoparser::ParserContext as net_traits::FetchResponseListener>::process_response_chunk::h214e19640f94ec26
                        at components/script/dom/servoparser/mod.rs:720
  63:     0x55555772251f - script::script_thread::ScriptThread::handle_fetch_chunk::h042ae8fc159a7939
                        at components/script/script_thread.rs:2518
  64:     0x55555770c0d3 - script::script_thread::ScriptThread::handle_msg_from_constellation::ha15ae6c7652fbbf7
                        at components/script/script_thread.rs:1268
  65:     0x55555794a60c - script::script_thread::ScriptThread::handle_msgs::{{closure}}::h6319263d718905a4
                        at components/script/script_thread.rs:1073
  66:     0x55555794aaf5 - script::script_thread::ScriptThread::profile_event::h24ad32198d7857e4
                        at components/script/script_thread.rs:1246
  67:     0x555557709174 - script::script_thread::ScriptThread::handle_msgs::h7f813572bec83627
                        at components/script/script_thread.rs:1067
  68:     0x555557706a33 - script::script_thread::ScriptThread::start::hfffc65ead139c565
                        at components/script/script_thread.rs:899
  69:     0x555557947dbc - <script::script_thread::ScriptThread as script_traits::ScriptThreadFactory>::create::{{closure}}::{{closure}}::hb7eb5271aea54155
                        at components/script/script_thread.rs:580
  70:     0x5555583eba54 - profile_traits::mem::ProfilerChan::run_with_memory_reporting::he9923d74841dc066
                        at /shared/dev/rust/servo/components/profile_traits/mem.rs:63
  71:     0x555557948383 - <script::script_thread::ScriptThread as script_traits::ScriptThreadFactory>::create::{{closure}}::h8e07abd934bb999e
                        at components/script/script_thread.rs:579
  72:     0x5555590fd0d4 - std::sys_common::backtrace::__rust_begin_short_backtrace::h2d78b2f1df325efe
                        at /checkout/src/libstd/sys_common/backtrace.rs:133
  73:     0x555558c26f1b - std::thread::Builder::spawn::{{closure}}::{{closure}}::h60029a105377620a
                        at /checkout/src/libstd/thread/mod.rs:406
  74:     0x55555772ae94 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h071cb41be9fa08a0
                        at /checkout/src/libstd/panic.rs:293
  75:     0x5555571acab4 - std::panicking::try::do_call::h0634da9ad6ac21c1
                        at /checkout/src/libstd/panicking.rs:479
  76:     0x55555dc0ad6e - __rust_maybe_catch_panic
                        at libpanic_unwind/lib.rs:102
  77:     0x5555570a838c - std::panicking::try::h21b3c835feaab04b
                        at /checkout/src/libstd/panicking.rs:458
  78:     0x55555779098c - std::panic::catch_unwind::h79f92692c3fe610e
                        at /checkout/src/libstd/panic.rs:358
  79:     0x555558c26bf8 - std::thread::Builder::spawn::{{closure}}::he57f2c95280fc725
                        at /checkout/src/libstd/thread/mod.rs:405
  80:     0x555558c27255 - <F as alloc::boxed::FnBox<A>>::call_box::h5fc075c8048227e2
                        at /checkout/src/liballoc/boxed.rs:788
  81:     0x55555dbf5d7b - <alloc::boxed::Box<alloc::boxed::FnBox<A, Output$u3d$R$GT$$u20$$u2b$$u20$$u27$a$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::h13f1b0bf377a9f5b
                        at /checkout/src/liballoc/boxed.rs:798
                         - std::sys_common::thread::start_thread::hb5b6e0447b9691dc
                        at libstd/sys_common/thread.rs:24
                         - std::sys::unix::thread::Thread::new::thread_start::hcaff0bef1a01c624
                        at libstd/sys/unix/thread.rs:90
  82:     0x7ffff764ef29 - start_thread
  83:     0x7ffff67f1ede - __clone
  84:                0x0 - <unknown>
ERROR 2018-08-19T17:25:22Z: servo: DomRefCell<T> already mutably borrowed: BorrowError
Pipeline failed in hard-fail mode.  Crashing!
Servo exited with return value 1
@jdm
Copy link
Member

@jdm jdm commented Aug 19, 2018

That looks like the problem that #21028 set out to solve.

@mateon1
Copy link
Contributor Author

@mateon1 mateon1 commented Aug 19, 2018

git bisect confirms that the panic changed in that PR (40ea4c4)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
3 participants
You can’t perform that action at this time.