Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Compilation of rust 0.6 fails with "task failed at 'explicit failure'" #6917

Closed
elszben opened this issue Jun 3, 2013 · 4 comments
Closed

Comments

@elszben
Copy link

elszben commented Jun 3, 2013

I was about to try rust on debian 7 (64bit) and it failed while compiling with the following error:

laci@lumen:~/rust/rust-0.6$ make RUST_LOG=rustc=1,::rt::backtrace
cfg: build triple x86_64-unknown-linux-gnu
cfg: host triples x86_64-unknown-linux-gnu
cfg: target triples x86_64-unknown-linux-gnu
cfg: host for x86_64-unknown-linux-gnu is x86_64
cfg: os for x86_64-unknown-linux-gnu is unknown-linux-gnu
cfg: using gcc
cfg: no pandoc found, omitting doc/rust.pdf
cfg: no llnextgen found, omitting grammar-verification
cfg: no pandoc found, omitting library doc build
compile_and_link: x86_64-unknown-linux-gnu/stage0/lib/rustc/x86_64-unknown-linux-gnu/lib/librustc.so
rust: task failed at 'explicit failure', /home/rustbuild/src/rust-buildbot/slave/snap3-linux/build/src/libcore/run.rs:343
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustrt.so(_ZN9rust_task13begin_failureEPKcS1_m+0x4f)[0x2b24dc0b852f]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustrt.so(+0x299f1)[0x2b24dc0c89f1]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustrt.so(upcall_fail+0x1c6)[0x2b24dc0bacb6]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/libcore-c3ca5d77d81b46c1-0.6.so(+0x1059ab)[0x2b24d8daf9ab]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/libcore-c3ca5d77d81b46c1-0.6.so(+0x105952)[0x2b24d8daf952]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/libcore-c3ca5d77d81b46c1-0.6.so(_ZN3sys12begin_unwind16_701b8ec61f97ead3_06E+0x71)[0x2b24d8cf7441]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/libcore-c3ca5d77d81b46c1-0.6.so(_ZN3run14program_output16_3596fc6920d4f353_06E+0x2872)[0x2b24d8da9aa2]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/libcore-c3ca5d77d81b46c1-0.6.so(+0x14e214)[0x2b24d8df8214]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(_ZN4back4link11link_binary17_483345abdae712883_06E+0x3a9d)[0x2b24da488bad]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(+0x5db835)[0x2b24da251835]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(_ZN6driver6driver12compile_rest16_87c0f340aa21a393_06E+0x40e2)[0x2b24da4ef2b2]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(+0x8b9e84)[0x2b24da52fe84]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(_ZN6driver6driver12compile_upto17_84743710faafb0af3_06E+0x108)[0x2b24da4f1738]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(+0x8b9e84)[0x2b24da52fe84]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(_ZN6driver6driver13compile_input15_a6b0fe22676e6b3_06E+0xca)[0x2b24da4f1b7a]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(_ZN12run_compiler16_9de519bbeb758373_06E+0x20aa)[0x2b24da52131a]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(+0x8b7951)[0x2b24da52d951]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(+0x8b417c)[0x2b24da52a17c]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(+0x8b9e84)[0x2b24da52fe84]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/libcore-c3ca5d77d81b46c1-0.6.so(+0xce38e)[0x2b24d8d7838e]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/libcore-c3ca5d77d81b46c1-0.6.so(+0x14e214)[0x2b24d8df8214]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustrt.so(_Z18task_start_wrapperP10spawn_args+0x24)[0x2b24dc0b9534]
error: internal compiler error: unexpected failure
note: the compiler hit an unexpected failure path. this is a bug
note: try running with RUST_LOG=rustc=1,::rt::backtrace to get further details and report the results to github.com/mozilla/rust/issues
rust: task failed at 'explicit failure', /home/rustbuild/src/rust-buildbot/slave/snap3-linux/build/src/librustc/rustc.rc:357
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustrt.so(_ZN9rust_task13begin_failureEPKcS1_m+0x4f)[0x2b24dc0b852f]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustrt.so(+0x299f1)[0x2b24dc0c89f1]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustrt.so(upcall_fail+0x1c6)[0x2b24dc0bacb6]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/libcore-c3ca5d77d81b46c1-0.6.so(+0x1059ab)[0x2b24d8daf9ab]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/libcore-c3ca5d77d81b46c1-0.6.so(+0x105952)[0x2b24d8daf952]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/libcore-c3ca5d77d81b46c1-0.6.so(_ZN3sys12begin_unwind16_701b8ec61f97ead3_06E+0x71)[0x2b24d8cf7441]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/libcore-c3ca5d77d81b46c1-0.6.so(+0x14e214)[0x2b24d8df8214]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(_ZN7monitor17_ab3b5d4d4b9efdb63_06E+0x1577)[0x2b24da523947]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(+0x8b9e84)[0x2b24da52fe84]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustc-c84825241471686d-0.6.so(_ZN4main16_706f4ee7413ae583_06E+0x7e)[0x2b24da52fa9e]
/home/laci/rust/rust-0.6/x86_64-unknown-linux-gnu/stage0/bin/../lib/librustrt.so(_Z18task_start_wrapperP10spawn_args+0x24)[0x2b24dc0b9534]
rust: domain main @0x22253c0 root task failed
make: *** [x86_64-unknown-linux-gnu/stage0/lib/rustc/x86_64-unknown-linux-gnu/lib/librustc.so] Error 101

The compiler (runtime?) seems to complain about something in /home/rustbuild. I do not know what exactly the meaning of those explicit failure lines are but there is no /home/rustbuild/ directory on my machine.

@Aatch
Copy link
Contributor

Aatch commented Jun 5, 2013

It only mentions rustbuild because that is where the snapshot is built, and the snapshot is asserting.

Can you please try building the latest incoming, as that is where development happens.

From the look of the backtrace, you may be running out of memory when the linker is run, how much RAM do you have? Rust needs about 2G to build.

@elszben
Copy link
Author

elszben commented Jun 6, 2013

I have 4 gb memory and I closed everything unnecessary for one more build test and it died again with something similar. This time I've tried to build the latest code from git.
I guess you were right about the root cause, it died with the following:
compile_and_link: x86_64-unknown-linux-gnu/stage1/lib/rustc/x86_64-unknown-linux-gnu/lib/librustc.so
rust: task failed at 'failure in fork: Cannot allocate memory', /home/laci/rust/latest/rust/src/libcore/run.rs:382

I also watched the memory usage with the system monitor and it never reached 80% (it peaked around 78%). Honestly, I am not sure what my options are, if my system is not able to compile rust I guess I'll have to wait for a precompiled version.

@elszben
Copy link
Author

elszben commented Jun 8, 2013

I've added a 2 GB swap area and I've managed to compile rust at the first attempt. The funny thing is that according to my system monitor the memory usage still did not reach 80% and the swap area was not used, at all.

@Aatch
Copy link
Contributor

Aatch commented Jun 8, 2013

@elszben overcommit on linux interacts strangely with fork. This is a known issue, but the only thing we can do is lower memory usage, which a bit nebulous for a single issue.

Closing.

@Aatch Aatch closed this as completed Jun 8, 2013
flip1995 pushed a commit to flip1995/rust that referenced this issue Mar 25, 2021
…-fn, r=giraffate

Fix false-positive `manual_unwrap_or` inside const fn

Fixes rust-lang#6898

changelog:  Fix false-positive for manual_unwrap_or in const fn.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants