Skip to content

SIGSEGV when running liballoc tests on musl #71099

Closed
@tmiasko

Description

@tmiasko

From CI run on i686-unknown-linux-musl https://dev.azure.com/rust-lang/e71b0ddf-dd27-435a-873c-e30f86eea377/_apis/build/builds/26193/logs/1470:

2020-04-13T12:41:08.7062433Z test rc::tests::test_array_from_slice ... ok
2020-04-13T12:41:08.7063641Z �[0m�[0m�[1m�[31merror�[0m�[1m:�[0m test failed, to rerun pass '-p alloc --lib'
2020-04-13T12:41:08.7064157Z 
2020-04-13T12:41:08.7064524Z Caused by:
2020-04-13T12:41:08.7065617Z   process didn't exit successfully: `/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-std/i686-unknown-linux-musl/release/deps/alloc-d9d14ee843b8328e` (signal: 11, SIGSEGV: invalid memory reference)

Local reproduction on x86_64-unknown-linux-musl (using musl 1.1.22, i.e., the same as in CI):

#0  a_crash () at ./arch/x86_64/atomic_arch.h:108
#1  __bin_chunk (self=0x18d81b0) at src/malloc/malloc.c:450
#2  0x0000000000499eba in alloc::alloc::dealloc () at /../rust/src/liballoc/alloc.rs:102
#3  <alloc::alloc::Global as core::alloc::AllocRef>::dealloc () at /../rust/src/liballoc/alloc.rs:186
#4  <alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop () at /../rust/src/liballoc/raw_vec.rs:595
#5  core::ptr::drop_in_place () at /../rust/src/libcore/ptr/mod.rs:177
#6  core::ptr::drop_in_place () at /../rust/src/libcore/ptr/mod.rs:177
#7  <term::terminfo::TerminfoTerminal<T> as term::Terminal>::reset () at src/libterm/terminfo/mod.rs:185
#8  0x0000000000492ec2 in test::formatters::terse::TerseFormatter<T>::write_pretty () at src/libtest/formatters/terse.rs:90
#9  0x0000000000492bc4 in test::formatters::terse::TerseFormatter<T>::write_short_result () at src/libtest/formatters/terse.rs:69
#10 0x000000000049343d in <test::formatters::terse::TerseFormatter<T> as test::formatters::OutputFormatter>::write_result () at src/libtest/formatters/terse.rs:45
#11 0x00000000004749e6 in test::console::on_test_event () at src/libtest/console.rs:241
#12 0x000000000045b496 in test::console::run_tests_console::{{closure}} () at src/libtest/console.rs:280
#13 test::run_tests () at src/libtest/lib.rs:331
#14 0x000000000047650c in test::console::run_tests_console () at src/libtest/console.rs:280
#15 0x000000000045911e in test::test_main () at src/libtest/lib.rs:120
#16 0x00000000004593d9 in test::test_main_static () at src/libtest/lib.rs:139
#17 0x0000000000440703 in std::rt::lang_start::{{closure}} ()
#18 0x00000000004c6c96 in std::rt::lang_start_internal::{{closure}} () at src/libstd/rt.rs:52
#19 std::panicking::try::do_call () at src/libstd/panicking.rs:331
#20 std::panicking::try () at src/libstd/panicking.rs:274
#21 0x00000000004c25d3 in std::panic::catch_unwind () at src/libstd/panic.rs:394
#22 std::rt::lang_start_internal () at src/libstd/rt.rs:51
#23 0x0000000000422e62 in main ()

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-spuriousArea: Spurious failures in builds (spuriously == for no apparent reason)A-testsuiteArea: The testsuite used to check the correctness of rustcC-bugCategory: This is a bug.O-muslTarget: The musl libcT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions