Skip to content

deadlock detected when using -Zthreads=8 #117784

New issue

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

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

Already on GitHub? # to your account

Closed
MartinquaXD opened this issue Nov 10, 2023 · 6 comments · Fixed by #118488
Closed

deadlock detected when using -Zthreads=8 #117784

MartinquaXD opened this issue Nov 10, 2023 · 6 comments · Fixed by #118488
Labels
A-parallel-compiler Area: parallel compiler C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@MartinquaXD
Copy link

I just tried out the new parallelization feature of the compiler and it randomly panicked because a deadlock was detected.
I tried a couple of times and could not reproduce it unfortunately.

Meta

rustc --version --verbose:

cargo 1.75.0-nightly (7046d992f 2023-11-08)

Error output

thread '<unnamed>' panicked at compiler/rustc_query_system/src/query/job.rs:543:9:
deadlock detected

<Backtrace>

note: compiler flags: --crate-type lib -C embed-bitcode=no -C debuginfo=2 -C split-debuginfo=unpacked -Z threads=8

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
end of query stack
deadlock handler panicked, aborting process
error: could not compile `bigdecimal` (lib)

Caused by:
  process didn't exit successfully: `/Users/martin/.rustup/toolchains/nightly-aarch64-apple-darwin/bin/rustc --crate-name bigdecimal /Users/martin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bigdecimal-0.3.1/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --diagnostic-width=128 --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debuginfo=2 -C split-debuginfo=unpacked --cfg 'feature="serde"' -C metadata=36f9c58248b94912 -C extra-filename=-36f9c58248b94912 --out-dir /Users/martin/work/backend/side/target/debug/deps -L dependency=/Users/martin/work/backend/side/target/debug/deps --extern num_bigint=/Users/martin/work/backend/side/target/debug/deps/libnum_bigint-3d0a0c3120349810.rmeta --extern num_integer=/Users/martin/work/backend/side/target/debug/deps/libnum_integer-ed949aa408650e16.rmeta --extern num_traits=/Users/martin/work/backend/side/target/debug/deps/libnum_traits-a22352494166d956.rmeta --extern serde=/Users/martin/work/backend/side/target/debug/deps/libserde-2f69e42262cb5ef0.rmeta --cap-lints allow -Z threads=8` (signal: 6, SIGABRT: process abort signal)
warning: build failed, waiting for other jobs to finish...
Backtrace

stack backtrace:
   0:        0x100ee12b8 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h052d4a6449303d0c
   1:        0x100f23268 - core::fmt::write::hd7376fa11f842969
   2:        0x100ed79ec - std::io::Write::write_fmt::h8962cd07816e935b
   3:        0x100ee10f4 - std::sys_common::backtrace::print::h97fb0a8a4077c481
   4:        0x100ee3af4 - std::panicking::default_hook::{{closure}}::h3b4672ac61ca5355
   5:        0x100ee383c - std::panicking::default_hook::h609e6a125a90b4e7
   6:        0x10a2eabb8 - <alloc[e142c9bf9c63cfc4]::boxed::Box<rustc_driver_impl[1a98898d3f3a38ed]::install_ice_hook::{closure#0}> as core[4e0a19b8f4e7b450]::ops::function::Fn<(&dyn for<'a, 'b> core[4e0a19b8f4e7b450]::ops::function::Fn<(&'a core[4e0a19b8f4e7b450]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[4e0a19b8f4e7b450]::marker::Send + core[4e0a19b8f4e7b450]::marker::Sync, &core[4e0a19b8f4e7b450]::panic::panic_info::PanicInfo)>>::call
   7:        0x100ee416c - std::panicking::rust_panic_with_hook::h9625542414b348eb
   8:        0x100ee3f10 - std::panicking::begin_panic_handler::{{closure}}::hb4fa343c314105dc
   9:        0x100ee1720 - std::sys_common::backtrace::__rust_end_short_backtrace::he263cec7b035e782
  10:        0x100ee3cd0 - _rust_begin_unwind
  11:        0x100f3d0b8 - core::panicking::panic_fmt::h624e311b541e9a0d
  12:        0x10b6fac6c - rustc_query_system[2c5cf56d08163fd7]::query::job::deadlock
  13:        0x10a2fba58 - std[f37625d93cba7df1]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[6fd153b9b61224af]::util::run_in_thread_pool_with_globals<rustc_interface[6fd153b9b61224af]::interface::run_compiler<(), rustc_driver_impl[1a98898d3f3a38ed]::run_compiler::{closure#0}>::{closure#0}, ()>::{closure#2}::{closure#1}, ()>
  14:        0x10a2cccfc - <<std[f37625d93cba7df1]::thread::Builder>::spawn_unchecked_<rustc_interface[6fd153b9b61224af]::util::run_in_thread_pool_with_globals<rustc_interface[6fd153b9b61224af]::interface::run_compiler<core[4e0a19b8f4e7b450]::result::Result<(), rustc_span[7d3d88934d9d268]::ErrorGuaranteed>, rustc_driver_impl[1a98898d3f3a38ed]::run_compiler::{closure#1}>::{closure#0}, core[4e0a19b8f4e7b450]::result::Result<(), rustc_span[7d3d88934d9d268]::ErrorGuaranteed>>::{closure#2}::{closure#1}, ()>::{closure#1} as core[4e0a19b8f4e7b450]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  15:        0x100eec368 - std::sys::unix::thread::Thread::new::thread_start::h6af77cae4d08b8df
  16:        0x18f69ffa8 - __pthread_joiner_wake

rustc-ice-2023-11-10T12_41_14-4307.txt

@MartinquaXD MartinquaXD added C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Nov 10, 2023
@rustbot rustbot added the needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. label Nov 10, 2023
@saethlin saethlin changed the title Compiler panicked when using parallel frontend deadlock detected when using -Zthreads=8 Nov 10, 2023
@saethlin saethlin added A-parallel-compiler Area: parallel compiler and removed needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. labels Nov 10, 2023
@SparrowLii
Copy link
Member

Could you provide the minimal example causes the ICE?

@MartinquaXD
Copy link
Author

The project I compiled was huge and I was not able to consistently reproduce it so reducing my case to a minimal example might take forever.
Buy I noticed the issue you linked already contains a fairly small example code so it's probably alright to close my ticket since it seems to be a duplicate of that other ticket anyway.

@SparrowLii
Copy link
Member

Can you reproduce this bug using the latest nightly version to get the new error output?

@MartinquaXD
Copy link
Author

Yes. It appears to be the same issue (albeit while compiling a different dependency but that probably doesn't matter):

thread '<unnamed>' panicked at compiler/rustc_query_system/src/query/job.rs:548:13:
deadlock detected! current query map:
{
    QueryJobId(
        271116,
    ): QueryJobInfo {
        query: QueryStackFrame {
            description: "collect_and_partition_mono_items",
            span: Some(
                Span {
                    lo: BytePos(
                        0,
                    ),
                    hi: BytePos(
                        0,
                    ),
                    ctxt: #0,
                },
            ),
            def_id: None,
            def_kind: None,
            ty_adt_id: None,
            dep_kind: DepKind {
                variant: 250,
            },
            hash: 15975767348252564715,
        },
        job: QueryJob {
            id: QueryJobId(
                271116,
            ),
            span: Span {
                lo: BytePos(
                    0,
                ),
                hi: BytePos(
                    0,
                ),
                ctxt: #0,
            },
            parent: Some(
                QueryJobId(
                    270390,
                ),
            ),
            latch: None,
        },
    },
    QueryJobId(
        270390,
    ): QueryJobInfo {
        query: QueryStackFrame {
            description: "collecting exported symbols for crate `0`",
            span: Some(
                Span {
                    lo: BytePos(
                        0,
                    ),
                    hi: BytePos(
                        0,
                    ),
                    ctxt: #0,
                },
            ),
            def_id: None,
            def_kind: None,
            ty_adt_id: None,
            dep_kind: DepKind {
                variant: 249,
            },
            hash: 2769749618247426339,
        },
        job: QueryJob {
            id: QueryJobId(
                270390,
            ),
            span: Span {
                lo: BytePos(
                    0,
                ),
                hi: BytePos(
                    0,
                ),
                ctxt: #0,
            },
            parent: None,
            latch: Some(
                QueryLatch {
                    info: Mutex {
                        data: QueryLatchInfo {
                            complete: false,
                            waiters: [
                                QueryWaiter {
                                    query: None,
                                    condvar: Condvar { .. },
                                    span: Span {
                                        lo: BytePos(
                                            0,
                                        ),
                                        hi: BytePos(
                                            0,
                                        ),
                                        ctxt: #0,
                                    },
                                    cycle: Mutex {
                                        data: None,
                                    },
                                },
                            ],
                        },
                    },
                },
            ),
        },
    },
}
stack backtrace:
   0:        0x102dbcfa0 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hb8d18225a1661929
   1:        0x102dfeeb8 - core::fmt::write::h66d9d95386951700
   2:        0x102db3764 - std::io::Write::write_fmt::h9d6553bedbe91688
   3:        0x102dbcddc - std::sys_common::backtrace::print::h39028e36ec7b8685
   4:        0x102dbf7dc - std::panicking::default_hook::{{closure}}::h2f257dae1f0f72ca
   5:        0x102dbf524 - std::panicking::default_hook::h6488302641c8f9a5
   6:        0x10c184e38 - <alloc[e0ed195e94aa089e]::boxed::Box<rustc_driver_impl[ef5e448ef3e95e63]::install_ice_hook::{closure#0}> as core[12693b1b2ef4f00a]::ops::function::Fn<(&dyn for<'a, 'b> core[12693b1b2ef4f00a]::ops::function::Fn<(&'a core[12693b1b2ef4f00a]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[12693b1b2ef4f00a]::marker::Send + core[12693b1b2ef4f00a]::marker::Sync, &core[12693b1b2ef4f00a]::panic::panic_info::PanicInfo)>>::call
   7:        0x102dbfe54 - std::panicking::rust_panic_with_hook::h7d37ace162996714
   8:        0x102dbfc1c - std::panicking::begin_panic_handler::{{closure}}::h22ef26c89493a874
   9:        0x102dbd408 - std::sys_common::backtrace::__rust_end_short_backtrace::h12707e46a10e13f1
  10:        0x102dbf9b8 - _rust_begin_unwind
  11:        0x102e19120 - core::panicking::panic_fmt::h6b4a24417ba9d930
  12:        0x10d55ff58 - rustc_query_system[d5549c59454d906e]::query::job::deadlock
  13:        0x10c171e90 - std[1def8dc791e8ed96]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[7c00d2f3d4e7e51d]::util::run_in_thread_pool_with_globals<rustc_interface[7c00d2f3d4e7e51d]::interface::run_compiler<core[12693b1b2ef4f00a]::result::Result<(), rustc_span[bc478db2eb69d712]::ErrorGuaranteed>, rustc_driver_impl[ef5e448ef3e95e63]::run_compiler::{closure#0}>::{closure#0}, core[12693b1b2ef4f00a]::result::Result<(), rustc_span[bc478db2eb69d712]::ErrorGuaranteed>>::{closure#2}::{closure#1}, ()>
  14:        0x10c172730 - <<std[1def8dc791e8ed96]::thread::Builder>::spawn_unchecked_<rustc_interface[7c00d2f3d4e7e51d]::util::run_in_thread_pool_with_globals<rustc_interface[7c00d2f3d4e7e51d]::interface::run_compiler<core[12693b1b2ef4f00a]::result::Result<(), rustc_span[bc478db2eb69d712]::ErrorGuaranteed>, rustc_driver_impl[ef5e448ef3e95e63]::run_compiler::{closure#0}>::{closure#0}, core[12693b1b2ef4f00a]::result::Result<(), rustc_span[bc478db2eb69d712]::ErrorGuaranteed>>::{closure#2}::{closure#1}, ()>::{closure#1} as core[12693b1b2ef4f00a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  15:        0x102dc803c - std::sys::unix::thread::Thread::new::thread_start::haf9ae65b2a0bdc21
  16:        0x1918e7fa8 - __pthread_joiner_wake

error: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md

note: please attach the file at `/Users/martin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rustls-0.21.6/rustc-ice-2023-11-29T08_18_08-20115.txt` to your bug report

note: compiler flags: --crate-type lib -C embed-bitcode=no -C debuginfo=2 -C split-debuginfo=unpacked -Z threads=8

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
end of query stack
deadlock handler panicked, aborting process
error: could not compile `rustls` (lib)

Caused by:
  process didn't exit successfully: `/Users/martin/.rustup/toolchains/nightly-aarch64-apple-darwin/bin/rustc --crate-name rustls --edition=2021 /Users/martin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rustls-0.21.6/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --diagnostic-width=114 --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debuginfo=2 -C split-debuginfo=unpacked --cfg 'feature="default"' --cfg 'feature="log"' --cfg 'feature="logging"' --cfg 'feature="tls12"' -C metadata=67fcfb13440bd256 -C extra-filename=-67fcfb13440bd256 --out-dir /Users/martin/work/backend/main/target/debug/deps -L dependency=/Users/martin/work/backend/main/target/debug/deps --extern log=/Users/martin/work/backend/main/target/debug/deps/liblog-aa4856433adc5a5e.rmeta --extern ring=/Users/martin/work/backend/main/target/debug/deps/libring-745c94965474232e.rmeta --extern webpki=/Users/martin/work/backend/main/target/debug/deps/libwebpki-9dedcb39c13b0664.rmeta --extern sct=/Users/martin/work/backend/main/target/debug/deps/libsct-075319b689d94f4d.rmeta --cap-lints allow -Z threads=8 -L native=/Users/martin/work/backend/main/target/debug/build/ring-d4681648d316f62e/out` (signal: 6, SIGABRT: process abort signal)
warning: build failed, waiting for other jobs to finish...

bors added a commit to rust-lang-ci/rust that referenced this issue Dec 4, 2023
Change prefetch to avoid deadlock

Was abled to reproduce the deadlock in rust-lang#118205 and created a coredump when it happen. When looking at the backtraces  I noticed that the prefetch of exported_symbols (Thread 17 frame 4) started after the "actual" exported_symbols (Thread 2 frame 18) but it also is working on some of the collect_crate_mono_items (Thread 17 frame12 ) that Thread 2 is blocked on resulting in a deadlock.

This PR results in less parallell work that can be done at the same time but from what I can find we do not call the query exported_symbols from multiple places in the same join call any more.

```
Thread 17 (Thread 0x7f87b6299700 (LWP 11370)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f87be5166a9 in <parking_lot::condvar::Condvar>::wait_until_internal () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
#2  0x00007f87be12d854 in <rustc_query_system::query::job::QueryLatch>::wait_on () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
#3  0x00007f87bd27d16f in rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::VecCache<rustc_span::def_id::CrateNum, rustc_middle::query::erase::Erased<[u8; 16]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
#4  0x00007f87bd0b5b6a in rustc_query_impl::query_impl::exported_symbols::get_query_non_incr::__rust_end_short_backtrace () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#5  0x00007f87bdaebb0a in rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}::{closure#1} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#6  0x00007f87bdae1509 in rayon_core::join::join_context::call_b::<core::option::Option<rustc_data_structures::marker::FromDyn<&[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>>, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<&[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>>, rustc_data_structures::sync::parallel::enabled::join<rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}::{closure#1}, (), &[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>::{closure#0}::{closure#1}>::{closure#0}>::{closure#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#7  0x00007f87bdae32ff in <rayon_core::job::StackJob<rayon_core::latch::SpinLatch, rayon_core::join::join_context::call_b<core::option::Option<rustc_data_structures::marker::FromDyn<&[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>>, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<&[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>>, rustc_data_structures::sync::parallel::enabled::join<rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}::{closure#1}, (), &[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>::{closure#0}::{closure#1}>::{closure#0}>::{closure#0}, core::option::Option<rustc_data_structures::marker::FromDyn<&[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>>> as rayon_core::job::Job>::execute () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#8  0x00007f87b8338823 in <rayon_core::registry::WorkerThread>::wait_until_cold () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#9  0x00007f87bc2edbaf in rayon_core::join::join_context::<rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#0}, rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#1}, (), ()>::{closure#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#10 0x00007f87bc2ed313 in rayon_core::registry::in_worker::<rayon_core::join::join_context<rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#0}, rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#1}, (), ()>::{closure#0}, ((), ())> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#11 0x00007f87bc2db2a4 in rayon::iter::plumbing::bridge_producer_consumer::helper::<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#12 0x00007f87bc2eead2 in <rayon_core::job::StackJob<rayon_core::latch::SpinLatch, rayon_core::join::join_context::call_b<(), rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#1}>::{closure#0}, ()> as rayon_core::job::Job>::execute () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#13 0x00007f87b8338823 in <rayon_core::registry::WorkerThread>::wait_until_cold () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#14 0x00007f87be52d1f9 in <rayon_core::registry::ThreadBuilder>::run () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#15 0x00007f87b8461c57 in <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}, ()> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#16 0x00007f87b846e465 in rustc_span::set_session_globals_then::<(), rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#17 0x00007f87b844f282 in <<crossbeam_utils::thread::ScopedThreadBuilder>::spawn<<rayon_core::ThreadPoolBuilder>::build_scoped<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, ()>::{closure#0} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#18 0x00007f87b846af58 in <<std::thread::Builder>::spawn_unchecked_<alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send>, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#19 0x00007f87b7898e85 in std::sys::unix::thread::Thread::new::thread_start () from /home/andjo403/.rustup/toolchains/stage1/lib/libstd-d570b0650d35d951.so
rust-lang#20 0x00007f87b7615609 in start_thread (arg=<optimized out>) at pthread_create.c:477
rust-lang#21 0x00007f87b7755133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f87b729b700 (LWP 11368)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f87b7887b51 in std::sys::unix::locks::futex_condvar::Condvar::wait () from /home/andjo403/.rustup/toolchains/stage1/lib/libstd-d570b0650d35d951.so
#2  0x00007f87b8339478 in <rayon_core::sleep::Sleep>::sleep () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
#3  0x00007f87b83387c3 in <rayon_core::registry::WorkerThread>::wait_until_cold () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
#4  0x00007f87bc2edbaf in rayon_core::join::join_context::<rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#0}, rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#1}, (), ()>::{closure#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#5  0x00007f87bc2ed313 in rayon_core::registry::in_worker::<rayon_core::join::join_context<rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#0}, rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#1}, (), ()>::{closure#0}, ((), ())> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#6  0x00007f87bc2db50c in <rayon::vec::IntoIter<rustc_middle::mir::mono::MonoItem> as rayon::iter::ParallelIterator>::for_each::<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#7  0x00007f87bc2e8cd7 in <rustc_session::session::Session>::time::<(), rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#8  0x00007f87bc2b8f2c in rustc_monomorphize::collector::collect_crate_mono_items () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#9  0x00007f87bc2c30d9 in rustc_monomorphize::partitioning::collect_and_partition_mono_items () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#10 0x00007f87bcf2cde6 in rustc_query_impl::plumbing::__rust_begin_short_backtrace::<rustc_query_impl::query_impl::collect_and_partition_mono_items::dynamic_query::{closure#2}::{closure#0}, rustc_middle::query::erase::Erased<[u8; 24]>> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#11 0x00007f87bd156a3c in <rustc_query_impl::query_impl::collect_and_partition_mono_items::dynamic_query::{closure#2} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, ())>>::call_once () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#12 0x00007f87bd1c6a7d in rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 24]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#13 0x00007f87bd15df40 in rustc_query_impl::query_impl::collect_and_partition_mono_items::get_query_non_incr::__rust_end_short_backtrace () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#14 0x00007f87bd7a0ad9 in rustc_codegen_ssa::back::symbol_export::exported_symbols_provider_local () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#15 0x00007f87bcf29acb in rustc_query_impl::plumbing::__rust_begin_short_backtrace::<rustc_query_impl::query_impl::exported_symbols::dynamic_query::{closure#2}::{closure#0}, rustc_middle::query::erase::Erased<[u8; 16]>> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#16 0x00007f87bcfdb350 in <rustc_query_impl::query_impl::exported_symbols::dynamic_query::{closure#2} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, rustc_span::def_id::CrateNum)>>::call_once () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#17 0x00007f87bd27d64f in rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::VecCache<rustc_span::def_id::CrateNum, rustc_middle::query::erase::Erased<[u8; 16]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#18 0x00007f87bd0b5b6a in rustc_query_impl::query_impl::exported_symbols::get_query_non_incr::__rust_end_short_backtrace () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#19 0x00007f87bda927ce in rustc_middle::query::plumbing::query_get_at::<rustc_query_system::query::caches::VecCache<rustc_span::def_id::CrateNum, rustc_middle::query::erase::Erased<[u8; 16]>>> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#20 0x00007f87bda9c93f in <rustc_metadata::rmeta::encoder::EncodeContext>::encode_crate_root () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#21 0x00007f87bdaa6ef7 in rustc_metadata::rmeta::encoder::encode_metadata_impl () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#22 0x00007f87bdae0b77 in rayon_core::join::join_context::<rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::enabled::join<rustc_metadata::rmeta::encoder::encode_metadata::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::enabled::join<rustc_metadata::rmeta::encoder::encode_metadata::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}, (), ()>::{closure#0}::{closure#1}>::{closure#0}, core::option::Option<rustc_data_structures::marker::FromDyn<()>>, core::option::Option<rustc_data_structures::marker::FromDyn<()>>>::{closure#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#23 0x00007f87bdaded2f in rayon_core::registry::in_worker::<rayon_core::join::join_context<rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::enabled::join<rustc_metadata::rmeta::encoder::encode_metadata::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::enabled::join<rustc_metadata::rmeta::encoder::encode_metadata::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}, (), ()>::{closure#0}::{closure#1}>::{closure#0}, core::option::Option<rustc_data_structures::marker::FromDyn<()>>, core::option::Option<rustc_data_structures::marker::FromDyn<()>>>::{closure#0}, (core::option::Option<rustc_data_structures::marker::FromDyn<()>>, core::option::Option<rustc_data_structures::marker::FromDyn<()>>)> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#24 0x00007f87bdaa5a03 in rustc_metadata::rmeta::encoder::encode_metadata () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#25 0x00007f87bdaed628 in rustc_metadata::fs::encode_and_write_metadata () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#26 0x00007f87b86608be in rustc_interface::passes::start_codegen () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#27 0x00007f87b8664946 in <rustc_middle::ty::context::GlobalCtxt>::enter::<<rustc_interface::queries::Queries>::codegen_and_build_linker::{closure#0}, core::result::Result<rustc_interface::queries::Linker, rustc_span::ErrorGuaranteed>> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#28 0x00007f87b864db00 in <rustc_interface::queries::Queries>::codegen_and_build_linker () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#29 0x00007f87b849400f in <rustc_interface::interface::Compiler>::enter::<rustc_driver_impl::run_compiler::{closure#0}::{closure#0}, core::result::Result<core::option::Option<rustc_interface::queries::Linker>, rustc_span::ErrorGuaranteed>> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#30 0x00007f87b846e067 in rustc_span::set_source_map::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}::{closure#0}> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#31 0x00007f87b844dc13 in <rayon_core::thread_pool::ThreadPool>::install::<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#32 0x00007f87b84509a1 in <rayon_core::job::StackJob<rayon_core::latch::LatchRef<rayon_core::latch::LockLatch>, <rayon_core::registry::Registry>::in_worker_cold<<rayon_core::thread_pool::ThreadPool>::install<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>> as rayon_core::job::Job>::execute () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#33 0x00007f87b8338823 in <rayon_core::registry::WorkerThread>::wait_until_cold () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#34 0x00007f87be52d1f9 in <rayon_core::registry::ThreadBuilder>::run () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#35 0x00007f87b8461c57 in <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}, ()> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#36 0x00007f87b846e465 in rustc_span::set_session_globals_then::<(), rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#37 0x00007f87b844f282 in <<crossbeam_utils::thread::ScopedThreadBuilder>::spawn<<rayon_core::ThreadPoolBuilder>::build_scoped<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, ()>::{closure#0} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#38 0x00007f87b846af58 in <<std::thread::Builder>::spawn_unchecked_<alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send>, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#39 0x00007f87b7898e85 in std::sys::unix::thread::Thread::new::thread_start () from /home/andjo403/.rustup/toolchains/stage1/lib/libstd-d570b0650d35d951.so
rust-lang#40 0x00007f87b7615609 in start_thread (arg=<optimized out>) at pthread_create.c:477
rust-lang#41 0x00007f87b7755133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

```

fixes rust-lang#118205
fixes rust-lang#117759 from the latest logs it is the same query map as in rust-lang#118205
fixes rust-lang#118529
fixes rust-lang#117784
cc rust-lang#118206

r? `@SparrowLii`
fee1-dead added a commit to fee1-dead-contrib/rust that referenced this issue Dec 5, 2023
…wLii

Change prefetch to avoid deadlock

Was abled to reproduce the deadlock in rust-lang#118205 and created a coredump when it happen. When looking at the backtraces  I noticed that the prefetch of exported_symbols (Thread 17 frame 4) started after the "actual" exported_symbols (Thread 2 frame 18) but it also is working on some of the collect_crate_mono_items (Thread 17 frame12 ) that Thread 2 is blocked on resulting in a deadlock.

This PR results in less parallell work that can be done at the same time but from what I can find we do not call the query exported_symbols from multiple places in the same join call any more.

```
Thread 17 (Thread 0x7f87b6299700 (LWP 11370)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f87be5166a9 in <parking_lot::condvar::Condvar>::wait_until_internal () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#2  0x00007f87be12d854 in <rustc_query_system::query::job::QueryLatch>::wait_on () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#3  0x00007f87bd27d16f in rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::VecCache<rustc_span::def_id::CrateNum, rustc_middle::query::erase::Erased<[u8; 16]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#4  0x00007f87bd0b5b6a in rustc_query_impl::query_impl::exported_symbols::get_query_non_incr::__rust_end_short_backtrace () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#5  0x00007f87bdaebb0a in rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}::{closure#1} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#6  0x00007f87bdae1509 in rayon_core::join::join_context::call_b::<core::option::Option<rustc_data_structures::marker::FromDyn<&[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>>, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<&[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>>, rustc_data_structures::sync::parallel::enabled::join<rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}::{closure#1}, (), &[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>::{closure#0}::{closure#1}>::{closure#0}>::{closure#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#7  0x00007f87bdae32ff in <rayon_core::job::StackJob<rayon_core::latch::SpinLatch, rayon_core::join::join_context::call_b<core::option::Option<rustc_data_structures::marker::FromDyn<&[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>>, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<&[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>>, rustc_data_structures::sync::parallel::enabled::join<rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}::{closure#1}, (), &[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>::{closure#0}::{closure#1}>::{closure#0}>::{closure#0}, core::option::Option<rustc_data_structures::marker::FromDyn<&[(rustc_middle::middle::exported_symbols::ExportedSymbol, rustc_middle::middle::exported_symbols::SymbolExportInfo)]>>> as rayon_core::job::Job>::execute () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#8  0x00007f87b8338823 in <rayon_core::registry::WorkerThread>::wait_until_cold () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#9  0x00007f87bc2edbaf in rayon_core::join::join_context::<rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#0}, rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#1}, (), ()>::{closure#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#10 0x00007f87bc2ed313 in rayon_core::registry::in_worker::<rayon_core::join::join_context<rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#0}, rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#1}, (), ()>::{closure#0}, ((), ())> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#11 0x00007f87bc2db2a4 in rayon::iter::plumbing::bridge_producer_consumer::helper::<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#12 0x00007f87bc2eead2 in <rayon_core::job::StackJob<rayon_core::latch::SpinLatch, rayon_core::join::join_context::call_b<(), rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#1}>::{closure#0}, ()> as rayon_core::job::Job>::execute () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#13 0x00007f87b8338823 in <rayon_core::registry::WorkerThread>::wait_until_cold () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#14 0x00007f87be52d1f9 in <rayon_core::registry::ThreadBuilder>::run () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#15 0x00007f87b8461c57 in <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}, ()> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#16 0x00007f87b846e465 in rustc_span::set_session_globals_then::<(), rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#17 0x00007f87b844f282 in <<crossbeam_utils::thread::ScopedThreadBuilder>::spawn<<rayon_core::ThreadPoolBuilder>::build_scoped<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, ()>::{closure#0} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#18 0x00007f87b846af58 in <<std::thread::Builder>::spawn_unchecked_<alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send>, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#19 0x00007f87b7898e85 in std::sys::unix::thread::Thread::new::thread_start () from /home/andjo403/.rustup/toolchains/stage1/lib/libstd-d570b0650d35d951.so
rust-lang#20 0x00007f87b7615609 in start_thread (arg=<optimized out>) at pthread_create.c:477
rust-lang#21 0x00007f87b7755133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f87b729b700 (LWP 11368)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007f87b7887b51 in std::sys::unix::locks::futex_condvar::Condvar::wait () from /home/andjo403/.rustup/toolchains/stage1/lib/libstd-d570b0650d35d951.so
rust-lang#2  0x00007f87b8339478 in <rayon_core::sleep::Sleep>::sleep () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#3  0x00007f87b83387c3 in <rayon_core::registry::WorkerThread>::wait_until_cold () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#4  0x00007f87bc2edbaf in rayon_core::join::join_context::<rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#0}, rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#1}, (), ()>::{closure#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#5  0x00007f87bc2ed313 in rayon_core::registry::in_worker::<rayon_core::join::join_context<rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#0}, rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::vec::DrainProducer<rustc_middle::mir::mono::MonoItem>, rayon::iter::for_each::ForEachConsumer<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}>>::{closure#1}, (), ()>::{closure#0}, ((), ())> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#6  0x00007f87bc2db50c in <rayon::vec::IntoIter<rustc_middle::mir::mono::MonoItem> as rayon::iter::ParallelIterator>::for_each::<rustc_data_structures::sync::parallel::enabled::par_for_each_in<rustc_middle::mir::mono::MonoItem, alloc::vec::Vec<rustc_middle::mir::mono::MonoItem>, rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#0}> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#7  0x00007f87bc2e8cd7 in <rustc_session::session::Session>::time::<(), rustc_monomorphize::collector::collect_crate_mono_items::{closure#1}> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#8  0x00007f87bc2b8f2c in rustc_monomorphize::collector::collect_crate_mono_items () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#9  0x00007f87bc2c30d9 in rustc_monomorphize::partitioning::collect_and_partition_mono_items () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#10 0x00007f87bcf2cde6 in rustc_query_impl::plumbing::__rust_begin_short_backtrace::<rustc_query_impl::query_impl::collect_and_partition_mono_items::dynamic_query::{closure#2}::{closure#0}, rustc_middle::query::erase::Erased<[u8; 24]>> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#11 0x00007f87bd156a3c in <rustc_query_impl::query_impl::collect_and_partition_mono_items::dynamic_query::{closure#2} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, ())>>::call_once () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#12 0x00007f87bd1c6a7d in rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::SingleCache<rustc_middle::query::erase::Erased<[u8; 24]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#13 0x00007f87bd15df40 in rustc_query_impl::query_impl::collect_and_partition_mono_items::get_query_non_incr::__rust_end_short_backtrace () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#14 0x00007f87bd7a0ad9 in rustc_codegen_ssa::back::symbol_export::exported_symbols_provider_local () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#15 0x00007f87bcf29acb in rustc_query_impl::plumbing::__rust_begin_short_backtrace::<rustc_query_impl::query_impl::exported_symbols::dynamic_query::{closure#2}::{closure#0}, rustc_middle::query::erase::Erased<[u8; 16]>> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#16 0x00007f87bcfdb350 in <rustc_query_impl::query_impl::exported_symbols::dynamic_query::{closure#2} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, rustc_span::def_id::CrateNum)>>::call_once () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#17 0x00007f87bd27d64f in rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::VecCache<rustc_span::def_id::CrateNum, rustc_middle::query::erase::Erased<[u8; 16]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#18 0x00007f87bd0b5b6a in rustc_query_impl::query_impl::exported_symbols::get_query_non_incr::__rust_end_short_backtrace () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#19 0x00007f87bda927ce in rustc_middle::query::plumbing::query_get_at::<rustc_query_system::query::caches::VecCache<rustc_span::def_id::CrateNum, rustc_middle::query::erase::Erased<[u8; 16]>>> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#20 0x00007f87bda9c93f in <rustc_metadata::rmeta::encoder::EncodeContext>::encode_crate_root () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#21 0x00007f87bdaa6ef7 in rustc_metadata::rmeta::encoder::encode_metadata_impl () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#22 0x00007f87bdae0b77 in rayon_core::join::join_context::<rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::enabled::join<rustc_metadata::rmeta::encoder::encode_metadata::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::enabled::join<rustc_metadata::rmeta::encoder::encode_metadata::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}, (), ()>::{closure#0}::{closure#1}>::{closure#0}, core::option::Option<rustc_data_structures::marker::FromDyn<()>>, core::option::Option<rustc_data_structures::marker::FromDyn<()>>>::{closure#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#23 0x00007f87bdaded2f in rayon_core::registry::in_worker::<rayon_core::join::join_context<rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::enabled::join<rustc_metadata::rmeta::encoder::encode_metadata::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}, (), ()>::{closure#0}::{closure#0}>::{closure#0}, rayon_core::join::join::call<core::option::Option<rustc_data_structures::marker::FromDyn<()>>, rustc_data_structures::sync::parallel::enabled::join<rustc_metadata::rmeta::encoder::encode_metadata::{closure#0}, rustc_metadata::rmeta::encoder::encode_metadata::{closure#1}, (), ()>::{closure#0}::{closure#1}>::{closure#0}, core::option::Option<rustc_data_structures::marker::FromDyn<()>>, core::option::Option<rustc_data_structures::marker::FromDyn<()>>>::{closure#0}, (core::option::Option<rustc_data_structures::marker::FromDyn<()>>, core::option::Option<rustc_data_structures::marker::FromDyn<()>>)> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#24 0x00007f87bdaa5a03 in rustc_metadata::rmeta::encoder::encode_metadata () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#25 0x00007f87bdaed628 in rustc_metadata::fs::encode_and_write_metadata () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#26 0x00007f87b86608be in rustc_interface::passes::start_codegen () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#27 0x00007f87b8664946 in <rustc_middle::ty::context::GlobalCtxt>::enter::<<rustc_interface::queries::Queries>::codegen_and_build_linker::{closure#0}, core::result::Result<rustc_interface::queries::Linker, rustc_span::ErrorGuaranteed>> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#28 0x00007f87b864db00 in <rustc_interface::queries::Queries>::codegen_and_build_linker () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#29 0x00007f87b849400f in <rustc_interface::interface::Compiler>::enter::<rustc_driver_impl::run_compiler::{closure#0}::{closure#0}, core::result::Result<core::option::Option<rustc_interface::queries::Linker>, rustc_span::ErrorGuaranteed>> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#30 0x00007f87b846e067 in rustc_span::set_source_map::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}::{closure#0}> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#31 0x00007f87b844dc13 in <rayon_core::thread_pool::ThreadPool>::install::<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#32 0x00007f87b84509a1 in <rayon_core::job::StackJob<rayon_core::latch::LatchRef<rayon_core::latch::LockLatch>, <rayon_core::registry::Registry>::in_worker_cold<<rayon_core::thread_pool::ThreadPool>::install<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>> as rayon_core::job::Job>::execute () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#33 0x00007f87b8338823 in <rayon_core::registry::WorkerThread>::wait_until_cold () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#34 0x00007f87be52d1f9 in <rayon_core::registry::ThreadBuilder>::run () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#35 0x00007f87b8461c57 in <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}, ()> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#36 0x00007f87b846e465 in rustc_span::set_session_globals_then::<(), rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}> () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#37 0x00007f87b844f282 in <<crossbeam_utils::thread::ScopedThreadBuilder>::spawn<<rayon_core::ThreadPoolBuilder>::build_scoped<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core::result::Result<(), rustc_span::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, ()>::{closure#0} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#38 0x00007f87b846af58 in <<std::thread::Builder>::spawn_unchecked_<alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send>, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} () from /home/andjo403/.rustup/toolchains/stage1/lib/librustc_driver-70ddb84e8f7ce707.so
rust-lang#39 0x00007f87b7898e85 in std::sys::unix::thread::Thread::new::thread_start () from /home/andjo403/.rustup/toolchains/stage1/lib/libstd-d570b0650d35d951.so
rust-lang#40 0x00007f87b7615609 in start_thread (arg=<optimized out>) at pthread_create.c:477
rust-lang#41 0x00007f87b7755133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

```

fixes rust-lang#118205
fixes rust-lang#117759 from the latest logs it is the same query map as in rust-lang#118205
fixes rust-lang#118529
fixes rust-lang#117784
cc rust-lang#118206

r? `@SparrowLii`
@bors bors closed this as completed in 8a7b203 Dec 5, 2023
@MartinquaXD
Copy link
Author

MartinquaXD commented Dec 6, 2023

BTW with the latest nightly the compiler always and immediately panics and produces multiple back traces.
version: nightly-aarch64-apple-darwin unchanged - rustc 1.76.0-nightly (e9013ac 2023-12-05)

compiler error
RUSTFLAGS="-Z threads=8" cargo +nightly build > error.txt                                                                                                                                                             ─╯
error: failed to run `rustc` to learn about target-specific information

Caused by:
  process didn't exit successfully: `/Users/martin/.rustup/toolchains/nightly-aarch64-apple-darwin/bin/rustc - --crate-name ___ --print=file-names -Z threads=8 --crate-type bin --crate-type rlib --crate-type dylib --crate-type cdylib --crate-type staticlib --crate-type proc-macro --print=sysroot --print=split-debuginfo --print=crate-name --print=cfg` (signal: 6, SIGABRT: process abort signal)
  --- stderr
  thread 'main' panicked at compiler/rustc_data_structures/src/jobserver.rs:77:33:
  jobserver check should have been called earlier
  thread 'stack backtrace:
  rustc' panicked at thread 'rustc' panicked at compiler/rustc_data_structures/src/jobserver.rs:73:33:
  jobserver check should have been called earlier
  compiler/rustc_data_structures/src/jobserver.rs:73:33:
  thread 'rustc' panicked at compiler/rustc_data_structures/src/jobserver.rsthread ':rustcjobserver check should have been called earlier' panicked at
  compiler/rustc_data_structures/src/jobserver.rs:73:73:33:
  jobserver check should have been called earlier
  33thread 'rustc' panicked at compiler/rustc_data_structures/src/jobserver.rs:73::
  jobserver check should have been called earlier
  33:
  jobserver check should have been called earlier
  thread 'rustc' panicked at compiler/rustc_data_structures/src/jobserver.rs:73:33:
  jobserver check should have been called earlier
  thread 'rustc' panicked at compiler/rustc_data_structures/src/jobserver.rs:73:33thread ':
  rustcjobserver check should have been called earlier' panicked at
  compiler/rustc_data_structures/src/jobserver.rs:73:33:
  jobserver check should have been called earlier
     0:        0x101924b84 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h561ae1a3732658b4
     1:        0x101966a84 - core::fmt::write::had87b87f6693d406
     2:        0x10191b330 - std::io::Write::write_fmt::hfad745acf45b0223
     3:        0x1019249c0 - std::sys_common::backtrace::print::hfe7dc3b13265fa3d
     4:        0x1019273c0 - std::panicking::default_hook::{{closure}}::h1db7d03db3b12784
     5:        0x101927108 - std::panicking::default_hook::h2441dab9aea1d7ca
     6:        0x10ad106a8 - <alloc[c93e098ce80cffbb]::boxed::Box<rustc_driver_impl[a3eca4280d024f82]::install_ice_hook::{closure#0}> as core[93d19b53d5db826e]::ops::function::Fn<(&dyn for<'a, 'b> core[93d19b53d5db826e]::ops::function::Fn<(&'a core[93d19b53d5db826e]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[93d19b53d5db826e]::marker::Sync + core[93d19b53d5db826e]::marker::Send, &core[93d19b53d5db826e]::panic::panic_info::PanicInfo)>>::call
     7:        0x101927a38 - std::panicking::rust_panic_with_hook::he4f1fcd294095ca5
     8:        0x101927800 - std::panicking::begin_panic_handler::{{closure}}::ha556c0669bd1aa87
     9:        0x101924fec - std::sys_common::backtrace::__rust_end_short_backtrace::h04b9b3c35181688e
    10:        0x10192759c - _rust_begin_unwind
    11:        0x101980c08 - core::panicking::panic_fmt::h3fefc83fe5bc8bde
    12:        0x101980bd4 - core::option::expect_failed::hdaa2f74183641e4c
    13:        0x10ac89de8 - rustc_data_structures[cb2866db42be93d6]::jobserver::release_thread
    14:        0x10eab9b90 - <rayon_core[66c8a0f9c2c406f6]::registry::Registry>::in_worker_cold::<<rayon_core[66c8a0f9c2c406f6]::thread_pool::ThreadPool>::install<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>
    15:        0x10acf6464 - <rayon_core[66c8a0f9c2c406f6]::ThreadPoolBuilder>::build_scoped::<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>
    16:        0x10ad14cfc - <scoped_tls[1566ff2ebd626c5]::ScopedKey<rustc_span[b5f51429c77c489e]::SessionGlobals>>::set::<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>
    17:        0x10ad046b8 - rustc_span[b5f51429c77c489e]::create_session_globals_then::<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}>
    18:        0x10acfb8cc - rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals::<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>
    19:        0x10acc8c20 - rustc_interface[f65de6e25abf875a]::interface::run_compiler::<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>
    20:        0x10acd8030 - <rustc_driver_impl[a3eca4280d024f82]::RunCompiler>::run
    21:        0x10acf7698 - std[362851305dc41231]::panicking::try::<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, core[93d19b53d5db826e]::panic::unwind_safe::AssertUnwindSafe<rustc_driver_impl[a3eca4280d024f82]::main::{closure#1}>>
    22:        0x10acdf4c8 - rustc_driver_impl[a3eca4280d024f82]::main
    23:        0x100e34568 - rustc_main[7b0f0b3a7f749ecb]::main
    24:        0x100e3451c - std[362851305dc41231]::sys_common::backtrace::__rust_begin_short_backtrace::<fn(), ()>
    25:        0x100e34534 - std[362851305dc41231]::rt::lang_start::<()>::{closure#0}
    26:        0x10190dee4 - std::rt::lang_start_internal::h845b17c5405e1c05
    27:        0x100e34500 - std[362851305dc41231]::rt::lang_start::<()>
    28:        0x100e34588 - _main

  stack backtrace:
     0:        0x101924b84 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h561ae1a3732658b4
     1:        0x101966a84 - core::fmt::write::had87b87f6693d406
     2:        0x10191b330 - std::io::Write::write_fmt::hfad745acf45b0223
     3:        0x1019249c0 - std::sys_common::backtrace::print::hfe7dc3b13265fa3d
     4:        0x1019273c0 - std::panicking::default_hook::{{closure}}::h1db7d03db3b12784
     5:        0x101927108 - std::panicking::default_hook::h2441dab9aea1d7ca
     6:        0x10ad106a8 - <alloc[c93e098ce80cffbb]::boxed::Box<rustc_driver_impl[a3eca4280d024f82]::install_ice_hook::{closure#0}> as core[93d19b53d5db826e]::ops::function::Fn<(&dyn for<'a, 'b> core[93d19b53d5db826e]::ops::function::Fn<(&'a core[93d19b53d5db826e]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[93d19b53d5db826e]::marker::Sync + core[93d19b53d5db826e]::marker::Send, &core[93d19b53d5db826e]::panic::panic_info::PanicInfo)>>::call
     7:        0x101927a38 - std::panicking::rust_panic_with_hook::he4f1fcd294095ca5
     8:        0x101927800 - std::panicking::begin_panic_handler::{{closure}}::ha556c0669bd1aa87
     9:        0x101924fec - std::sys_common::backtrace::__rust_end_short_backtrace::h04b9b3c35181688e
    10:        0x10192759c - _rust_begin_unwind
    11:        0x101980c08 - core::panicking::panic_fmt::h3fefc83fe5bc8bde
    12:        0x101980bd4 - core::option::expect_failed::hdaa2f74183641e4c
    13:        0x10ad00c60 - <rustc_data_structures[cb2866db42be93d6]::jobserver::acquire_thread as core[93d19b53d5db826e]::ops::function::Fn<()>>::call
    14:        0x10a428d58 - <rayon_core[66c8a0f9c2c406f6]::registry::ThreadBuilder>::run
    15:        0x10ad14fc4 - <scoped_tls[1566ff2ebd626c5]::ScopedKey<rustc_span[b5f51429c77c489e]::SessionGlobals>>::set::<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}, ()>
    16:        0x10acfea70 - <<crossbeam_utils[97410771e1ad9cd4]::thread::ScopedThreadBuilder>::spawn<<rayon_core[66c8a0f9c2c406f6]::ThreadPoolBuilder>::build_scoped<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, ()>::{closure#0} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    17:        0x10acfbdb4 - std[362851305dc41231]::sys_common::backtrace::__rust_begin_short_backtrace::<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>
    18:        0x10ad1bd24 - <<std[362851305dc41231]::thread::Builder>::spawn_unchecked_<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>::{closure#1} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    19:        0x10192fc30 - std::sys::unix::thread::Thread::new::thread_start::h1123e84c80816a72
    20:        0x1a765bfa8 - __pthread_joiner_wake

  stack backtrace:
     0:        0x101924b84 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h561ae1a3732658b4
     1:        0x101966a84 - core::fmt::write::had87b87f6693d406
     2:        0x10191b330 - std::io::Write::write_fmt::hfad745acf45b0223
     3:        0x1019249c0 - std::sys_common::backtrace::print::hfe7dc3b13265fa3d
     4:        0x1019273c0 - std::panicking::default_hook::{{closure}}::h1db7d03db3b12784
     5:        0x101927108 - std::panicking::default_hook::h2441dab9aea1d7ca
     6:        0x10ad106a8 - <alloc[c93e098ce80cffbb]::boxed::Box<rustc_driver_impl[a3eca4280d024f82]::install_ice_hook::{closure#0}> as core[93d19b53d5db826e]::ops::function::Fn<(&dyn for<'a, 'b> core[93d19b53d5db826e]::ops::function::Fn<(&'a core[93d19b53d5db826e]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[93d19b53d5db826e]::marker::Sync + core[93d19b53d5db826e]::marker::Send, &core[93d19b53d5db826e]::panic::panic_info::PanicInfo)>>::call
     7:        0x101927a38 - std::panicking::rust_panic_with_hook::he4f1fcd294095ca5
     8:        0x101927800 - std::panicking::begin_panic_handler::{{closure}}::ha556c0669bd1aa87
     9:        0x101924fec - std::sys_common::backtrace::__rust_end_short_backtrace::h04b9b3c35181688e
    10:        0x10192759c - _rust_begin_unwind
    11:        0x101980c08 - core::panicking::panic_fmt::h3fefc83fe5bc8bde
    12:        0x101980bd4 - core::option::expect_failed::hdaa2f74183641e4c
    13:        0x10ad00c60 - <rustc_data_structures[cb2866db42be93d6]::jobserver::acquire_thread as core[93d19b53d5db826e]::ops::function::Fn<()>>::call
    14:        0x10a428d58 - <rayon_core[66c8a0f9c2c406f6]::registry::ThreadBuilder>::run
    15:        0x10ad14fc4 - <scoped_tls[1566ff2ebd626c5]::ScopedKey<rustc_span[b5f51429c77c489e]::SessionGlobals>>::set::<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}, ()>
    16:        0x10acfea70 - <<crossbeam_utils[97410771e1ad9cd4]::thread::ScopedThreadBuilder>::spawn<<rayon_core[66c8a0f9c2c406f6]::ThreadPoolBuilder>::build_scoped<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, ()>::{closure#0} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    17:        0x10acfbdb4 - std[362851305dc41231]::sys_common::backtrace::__rust_begin_short_backtrace::<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>
    18:        0x10ad1bd24 - <<std[362851305dc41231]::thread::Builder>::spawn_unchecked_<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>::{closure#1} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    19:        0x10192fc30 - std::sys::unix::thread::Thread::new::thread_start::h1123e84c80816a72
    20:        0x1a765bfa8 - __pthread_joiner_wake

  stack backtrace:
     0:        0x101924b84 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h561ae1a3732658b4
     1:        0x101966a84 - core::fmt::write::had87b87f6693d406
     2:        0x10191b330 - std::io::Write::write_fmt::hfad745acf45b0223
     3:        0x1019249c0 - std::sys_common::backtrace::print::hfe7dc3b13265fa3d
     4:        0x1019273c0 - std::panicking::default_hook::{{closure}}::h1db7d03db3b12784
     5:        0x101927108 - std::panicking::default_hook::h2441dab9aea1d7ca
     6:        0x10ad106a8 - <alloc[c93e098ce80cffbb]::boxed::Box<rustc_driver_impl[a3eca4280d024f82]::install_ice_hook::{closure#0}> as core[93d19b53d5db826e]::ops::function::Fn<(&dyn for<'a, 'b> core[93d19b53d5db826e]::ops::function::Fn<(&'a core[93d19b53d5db826e]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[93d19b53d5db826e]::marker::Sync + core[93d19b53d5db826e]::marker::Send, &core[93d19b53d5db826e]::panic::panic_info::PanicInfo)>>::call
     7:        0x101927a38 - std::panicking::rust_panic_with_hook::he4f1fcd294095ca5
     8:        0x101927800 - std::panicking::begin_panic_handler::{{closure}}::ha556c0669bd1aa87
     9:        0x101924fec - std::sys_common::backtrace::__rust_end_short_backtrace::h04b9b3c35181688e
    10:        0x10192759c - _rust_begin_unwind
    11:        0x101980c08 - core::panicking::panic_fmt::h3fefc83fe5bc8bde
    12:        0x101980bd4 - core::option::expect_failed::hdaa2f74183641e4c
    13:        0x10ad00c60 - <rustc_data_structures[cb2866db42be93d6]::jobserver::acquire_thread as core[93d19b53d5db826e]::ops::function::Fn<()>>::call
    14:        0x10a428d58 - <rayon_core[66c8a0f9c2c406f6]::registry::ThreadBuilder>::run
    15:        0x10ad14fc4 - <scoped_tls[1566ff2ebd626c5]::ScopedKey<rustc_span[b5f51429c77c489e]::SessionGlobals>>::set::<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}, ()>
    16:        0x10acfea70 - <<crossbeam_utils[97410771e1ad9cd4]::thread::ScopedThreadBuilder>::spawn<<rayon_core[66c8a0f9c2c406f6]::ThreadPoolBuilder>::build_scoped<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, ()>::{closure#0} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    17:        0x10acfbdb4 - std[362851305dc41231]::sys_common::backtrace::__rust_begin_short_backtrace::<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>
    18:        0x10ad1bd24 - <<std[362851305dc41231]::thread::Builder>::spawn_unchecked_<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>::{closure#1} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    19:        0x10192fc30 - std::sys::unix::thread::Thread::new::thread_start::h1123e84c80816a72
    20:        0x1a765bfa8 - __pthread_joiner_wake

  stack backtrace:
     0:        0x101924b84 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h561ae1a3732658b4
     1:        0x101966a84 - core::fmt::write::had87b87f6693d406
     2:        0x10191b330 - std::io::Write::write_fmt::hfad745acf45b0223
     3:        0x1019249c0 - std::sys_common::backtrace::print::hfe7dc3b13265fa3d
     4:        0x1019273c0 - std::panicking::default_hook::{{closure}}::h1db7d03db3b12784
     5:        0x101927108 - std::panicking::default_hook::h2441dab9aea1d7ca
     6:        0x10ad106a8 - <alloc[c93e098ce80cffbb]::boxed::Box<rustc_driver_impl[a3eca4280d024f82]::install_ice_hook::{closure#0}> as core[93d19b53d5db826e]::ops::function::Fn<(&dyn for<'a, 'b> core[93d19b53d5db826e]::ops::function::Fn<(&'a core[93d19b53d5db826e]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[93d19b53d5db826e]::marker::Sync + core[93d19b53d5db826e]::marker::Send, &core[93d19b53d5db826e]::panic::panic_info::PanicInfo)>>::call
     7:        0x101927a38 - std::panicking::rust_panic_with_hook::he4f1fcd294095ca5
     8:        0x101927800 - std::panicking::begin_panic_handler::{{closure}}::ha556c0669bd1aa87
     9:        0x101924fec - std::sys_common::backtrace::__rust_end_short_backtrace::h04b9b3c35181688e
    10:        0x10192759c - _rust_begin_unwind
    11:        0x101980c08 - core::panicking::panic_fmt::h3fefc83fe5bc8bde
    12:        0x101980bd4 - core::option::expect_failed::hdaa2f74183641e4c
    13:        0x10ad00c60 - <rustc_data_structures[cb2866db42be93d6]::jobserver::acquire_thread as core[93d19b53d5db826e]::ops::function::Fn<()>>::call
    14:        0x10a428d58 - <rayon_core[66c8a0f9c2c406f6]::registry::ThreadBuilder>::run
    15:        0x10ad14fc4 - <scoped_tls[1566ff2ebd626c5]::ScopedKey<rustc_span[b5f51429c77c489e]::SessionGlobals>>::set::<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}, ()>
    16:        0x10acfea70 - <<crossbeam_utils[97410771e1ad9cd4]::thread::ScopedThreadBuilder>::spawn<<rayon_core[66c8a0f9c2c406f6]::ThreadPoolBuilder>::build_scoped<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, ()>::{closure#0} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    17:        0x10acfbdb4 - std[362851305dc41231]::sys_common::backtrace::__rust_begin_short_backtrace::<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>
    18:        0x10ad1bd24 - <<std[362851305dc41231]::thread::Builder>::spawn_unchecked_<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>::{closure#1} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    19:        0x10192fc30 - std::sys::unix::thread::Thread::new::thread_start::h1123e84c80816a72
    20:        0x1a765bfa8 - __pthread_joiner_wake

  stack backtrace:
     0:        0x101924b84 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h561ae1a3732658b4
     1:        0x101966a84 - core::fmt::write::had87b87f6693d406
     2:        0x10191b330 - std::io::Write::write_fmt::hfad745acf45b0223
     3:        0x1019249c0 - std::sys_common::backtrace::print::hfe7dc3b13265fa3d
     4:        0x1019273c0 - std::panicking::default_hook::{{closure}}::h1db7d03db3b12784
     5:        0x101927108 - std::panicking::default_hook::h2441dab9aea1d7ca
     6:        0x10ad106a8 - <alloc[c93e098ce80cffbb]::boxed::Box<rustc_driver_impl[a3eca4280d024f82]::install_ice_hook::{closure#0}> as core[93d19b53d5db826e]::ops::function::Fn<(&dyn for<'a, 'b> core[93d19b53d5db826e]::ops::function::Fn<(&'a core[93d19b53d5db826e]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[93d19b53d5db826e]::marker::Sync + core[93d19b53d5db826e]::marker::Send, &core[93d19b53d5db826e]::panic::panic_info::PanicInfo)>>::call
     7:        0x101927a38 - std::panicking::rust_panic_with_hook::he4f1fcd294095ca5
     8:        0x101927800 - std::panicking::begin_panic_handler::{{closure}}::ha556c0669bd1aa87
     9:        0x101924fec - std::sys_common::backtrace::__rust_end_short_backtrace::h04b9b3c35181688e
    10:        0x10192759c - _rust_begin_unwind
    11:        0x101980c08 - core::panicking::panic_fmt::h3fefc83fe5bc8bde
    12:        0x101980bd4 - core::option::expect_failed::hdaa2f74183641e4c
    13:        0x10ad00c60 - <rustc_data_structures[cb2866db42be93d6]::jobserver::acquire_thread as core[93d19b53d5db826e]::ops::function::Fn<()>>::call
    14:        0x10a428d58 - <rayon_core[66c8a0f9c2c406f6]::registry::ThreadBuilder>::run
    15:        0x10ad14fc4 - <scoped_tls[1566ff2ebd626c5]::ScopedKey<rustc_span[b5f51429c77c489e]::SessionGlobals>>::set::<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}, ()>
    16:        0x10acfea70 - <<crossbeam_utils[97410771e1ad9cd4]::thread::ScopedThreadBuilder>::spawn<<rayon_core[66c8a0f9c2c406f6]::ThreadPoolBuilder>::build_scoped<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, ()>::{closure#0} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    17:        0x10acfbdb4 - std[362851305dc41231]::sys_common::backtrace::__rust_begin_short_backtrace::<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>
    18:        0x10ad1bd24 - <<std[362851305dc41231]::thread::Builder>::spawn_unchecked_<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>::{closure#1} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    19:        0x10192fc30 - std::sys::unix::thread::Thread::new::thread_start::h1123e84c80816a72
    20:        0x1a765bfa8 - __pthread_joiner_wake

  stack backtrace:
     0:        0x101924b84 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h561ae1a3732658b4
     1:        0x101966a84 - core::fmt::write::had87b87f6693d406
     2:        0x10191b330 - std::io::Write::write_fmt::hfad745acf45b0223
     3:        0x1019249c0 - std::sys_common::backtrace::print::hfe7dc3b13265fa3d
     4:        0x1019273c0 - std::panicking::default_hook::{{closure}}::h1db7d03db3b12784
     5:        0x101927108 - std::panicking::default_hook::h2441dab9aea1d7ca
     6:        0x10ad106a8 - <alloc[c93e098ce80cffbb]::boxed::Box<rustc_driver_impl[a3eca4280d024f82]::install_ice_hook::{closure#0}> as core[93d19b53d5db826e]::ops::function::Fn<(&dyn for<'a, 'b> core[93d19b53d5db826e]::ops::function::Fn<(&'a core[93d19b53d5db826e]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[93d19b53d5db826e]::marker::Sync + core[93d19b53d5db826e]::marker::Send, &core[93d19b53d5db826e]::panic::panic_info::PanicInfo)>>::call
     7:        0x101927a38 - std::panicking::rust_panic_with_hook::he4f1fcd294095ca5
     8:        0x101927800 - std::panicking::begin_panic_handler::{{closure}}::ha556c0669bd1aa87
     9:        0x101924fec - std::sys_common::backtrace::__rust_end_short_backtrace::h04b9b3c35181688e
    10:        0x10192759c - _rust_begin_unwind
    11:        0x101980c08 - core::panicking::panic_fmt::h3fefc83fe5bc8bde
    12:        0x101980bd4 - core::option::expect_failed::hdaa2f74183641e4c
    13:        0x10ad00c60 - <rustc_data_structures[cb2866db42be93d6]::jobserver::acquire_thread as core[93d19b53d5db826e]::ops::function::Fn<()>>::call
    14:        0x10a428d58 - <rayon_core[66c8a0f9c2c406f6]::registry::ThreadBuilder>::run
    15:        0x10ad14fc4 - <scoped_tls[1566ff2ebd626c5]::ScopedKey<rustc_span[b5f51429c77c489e]::SessionGlobals>>::set::<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}, ()>
    16:        0x10acfea70 - <<crossbeam_utils[97410771e1ad9cd4]::thread::ScopedThreadBuilder>::spawn<<rayon_core[66c8a0f9c2c406f6]::ThreadPoolBuilder>::build_scoped<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, ()>::{closure#0} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    17:        0x10acfbdb4 - std[362851305dc41231]::sys_common::backtrace::__rust_begin_short_backtrace::<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>
    18:        0x10ad1bd24 - <<std[362851305dc41231]::thread::Builder>::spawn_unchecked_<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>::{closure#1} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    19:        0x10192fc30 - std::sys::unix::thread::Thread::new::thread_start::h1123e84c80816a72
    20:        0x1a765bfa8 - __pthread_joiner_wake

  stack backtrace:
     0:        0x101924b84 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h561ae1a3732658b4
     1:        0x101966a84 - core::fmt::write::had87b87f6693d406
     2:        0x10191b330 - std::io::Write::write_fmt::hfad745acf45b0223
     3:        0x1019249c0 - std::sys_common::backtrace::print::hfe7dc3b13265fa3d
     4:        0x1019273c0 - std::panicking::default_hook::{{closure}}::h1db7d03db3b12784
     5:        0x101927108 - std::panicking::default_hook::h2441dab9aea1d7ca
     6:        0x10ad106a8 - <alloc[c93e098ce80cffbb]::boxed::Box<rustc_driver_impl[a3eca4280d024f82]::install_ice_hook::{closure#0}> as core[93d19b53d5db826e]::ops::function::Fn<(&dyn for<'a, 'b> core[93d19b53d5db826e]::ops::function::Fn<(&'a core[93d19b53d5db826e]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[93d19b53d5db826e]::marker::Sync + core[93d19b53d5db826e]::marker::Send, &core[93d19b53d5db826e]::panic::panic_info::PanicInfo)>>::call
     7:        0x101927a38 - std::panicking::rust_panic_with_hook::he4f1fcd294095ca5
     8:        0x101927800 - std::panicking::begin_panic_handler::{{closure}}::ha556c0669bd1aa87
     9:        0x101924fec - std::sys_common::backtrace::__rust_end_short_backtrace::h04b9b3c35181688e
    10:        0x10192759c - _rust_begin_unwind
    11:        0x101980c08 - core::panicking::panic_fmt::h3fefc83fe5bc8bde
    12:        0x101980bd4 - core::option::expect_failed::hdaa2f74183641e4c
    13:        0x10ad00c60 - <rustc_data_structures[cb2866db42be93d6]::jobserver::acquire_thread as core[93d19b53d5db826e]::ops::function::Fn<()>>::call
    14:        0x10a428d58 - <rayon_core[66c8a0f9c2c406f6]::registry::ThreadBuilder>::run
    15:        0x10ad14fc4 - <scoped_tls[1566ff2ebd626c5]::ScopedKey<rustc_span[b5f51429c77c489e]::SessionGlobals>>::set::<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}, ()>
    16:        0x10acfea70 - <<crossbeam_utils[97410771e1ad9cd4]::thread::ScopedThreadBuilder>::spawn<<rayon_core[66c8a0f9c2c406f6]::ThreadPoolBuilder>::build_scoped<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, ()>::{closure#0} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    17:        0x10acfbdb4 - std[362851305dc41231]::sys_common::backtrace::__rust_begin_short_backtrace::<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>
    18:        0x10ad1bd24 - <<std[362851305dc41231]::thread::Builder>::spawn_unchecked_<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>::{closure#1} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    19:        0x10192fc30 - std::sys::unix::thread::Thread::new::thread_start::h1123e84c80816a72
    20:        0x1a765bfa8 - __pthread_joiner_wake

  stack backtrace:
     0:        0x101924b84 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h561ae1a3732658b4
     1:        0x101966a84 - core::fmt::write::had87b87f6693d406
     2:        0x10191b330 - std::io::Write::write_fmt::hfad745acf45b0223
     3:        0x1019249c0 - std::sys_common::backtrace::print::hfe7dc3b13265fa3d
     4:        0x1019273c0 - std::panicking::default_hook::{{closure}}::h1db7d03db3b12784
     5:        0x101927108 - std::panicking::default_hook::h2441dab9aea1d7ca
     6:        0x10ad106a8 - <alloc[c93e098ce80cffbb]::boxed::Box<rustc_driver_impl[a3eca4280d024f82]::install_ice_hook::{closure#0}> as core[93d19b53d5db826e]::ops::function::Fn<(&dyn for<'a, 'b> core[93d19b53d5db826e]::ops::function::Fn<(&'a core[93d19b53d5db826e]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[93d19b53d5db826e]::marker::Sync + core[93d19b53d5db826e]::marker::Send, &core[93d19b53d5db826e]::panic::panic_info::PanicInfo)>>::call
     7:        0x101927a38 - std::panicking::rust_panic_with_hook::he4f1fcd294095ca5
     8:        0x101927800 - std::panicking::begin_panic_handler::{{closure}}::ha556c0669bd1aa87
     9:        0x101924fec - std::sys_common::backtrace::__rust_end_short_backtrace::h04b9b3c35181688e
    10:        0x10192759c - _rust_begin_unwind
    11:        0x101980c08 - core::panicking::panic_fmt::h3fefc83fe5bc8bde
    12:        0x101980bd4 - core::option::expect_failed::hdaa2f74183641e4c
    13:        0x10ad00c60 - <rustc_data_structures[cb2866db42be93d6]::jobserver::acquire_thread as core[93d19b53d5db826e]::ops::function::Fn<()>>::call
    14:        0x10a428d58 - <rayon_core[66c8a0f9c2c406f6]::registry::ThreadBuilder>::run
    15:        0x10ad14fc4 - <scoped_tls[1566ff2ebd626c5]::ScopedKey<rustc_span[b5f51429c77c489e]::SessionGlobals>>::set::<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}::{closure#0}, ()>
    16:        0x10acfea70 - <<crossbeam_utils[97410771e1ad9cd4]::thread::ScopedThreadBuilder>::spawn<<rayon_core[66c8a0f9c2c406f6]::ThreadPoolBuilder>::build_scoped<rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#0}, rustc_interface[f65de6e25abf875a]::util::run_in_thread_pool_with_globals<rustc_interface[f65de6e25abf875a]::interface::run_compiler<core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>, rustc_driver_impl[a3eca4280d024f82]::run_compiler::{closure#0}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#3}::{closure#0}::{closure#1}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, ()>::{closure#0} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    17:        0x10acfbdb4 - std[362851305dc41231]::sys_common::backtrace::__rust_begin_short_backtrace::<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>
    18:        0x10ad1bd24 - <<std[362851305dc41231]::thread::Builder>::spawn_unchecked_<alloc[c93e098ce80cffbb]::boxed::Box<dyn core[93d19b53d5db826e]::ops::function::FnOnce<(), Output = ()> + core[93d19b53d5db826e]::marker::Send>, ()>::{closure#1} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
    19:        0x10192fc30 - std::sys::unix::thread::Thread::new::thread_start::h1123e84c80816a72
    20:        0x1a765bfa8 - __pthread_joiner_wake

  error: the compiler unexpectedly panicked. this is a bug.

  note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md

  note: please attach the file at `/Users/martin/work/backend/main/rustc-ice-2023-12-06T22_52_36-72591.txt` to your bug report

  note: compiler flags: -Z threads=8 --crate-type bin --crate-type rlib --crate-type dylib --crate-type cdylib --crate-type staticlib --crate-type proc-macro

  query stack during panic:
  end of query stack
  Rayon: detected unexpected panic; aborting

@SparrowLii
Copy link
Member

It would be fixed by #118589

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
A-parallel-compiler Area: parallel compiler C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants