[Pkg-rust-maintainers] Bug#895300: cargo: Please disable incremental-by-default on sparc64

John Paul Adrian Glaubitz glaubitz at physik.fu-berlin.de
Mon Apr 9 14:58:37 UTC 2018


Source: cargo
Version: 0.25.0-2
Severity: normal
User: debian-sparc at lists.debian.org
Usertags: sparc64

Hello!

The change to enable incremental builds by default unfortunately currently
breaks Rust builds on sparc64. I have observed this problem for building
both Firefox and the Rust compiler and it looks like this [1]:

   Compiling cmake v0.1.29
     Running `/usr/bin/rustc --crate-name cmake vendor/cmake/src/lib.rs --crate-type lib --emit=dep-info,link -C debug-assertions=off -C overflow-checks=on -C metadata=e1cd2a47defb4d9a -C extra-filename=-e1cd2a47defb4d9a --out-dir '/<<BUILDDIR>>/rustc-1.25.0+dfsg1/build/bootstrap/debug/deps' -L 'dependency=/<<BUILDDIR>>/rustc-1.25.0+dfsg1/build/bootstrap/debug/deps' --extern 'cc=/<<BUILDDIR>>/rustc-1.25.0+dfsg1/build/bootstrap/debug/deps/libcc-9169eb827816c87c.rlib' --cap-lints warn -Cdebuginfo=2`
error: incremental compilation: could not create session directory lock file: No such process (os error 3)

error: internal compiler error: unexpected panic

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

note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports

note: rustc 1.24.1 running on sparc64-unknown-linux-gnu

note: run with `RUST_BACKTRACE=1` for a backtrace

thread 'rustc' panicked at 'src/librustc/session/mod.rs:665: Trying to get session directory from IncrCompSession `NotInitialized`', src/librustc/session/mod.rs:1141:26
stack backtrace:
   0: rust_metadata_std_e973fcbcfde4db1b7f5619ab17536071
   1: rust_metadata_std_e973fcbcfde4db1b7f5619ab17536071
   2: rust_metadata_std_e973fcbcfde4db1b7f5619ab17536071
   3: rust_metadata_std_e973fcbcfde4db1b7f5619ab17536071
   4: std::panicking::rust_panic_with_hook
   5: rust_metadata_rustc_f5b4f956815e4c315eb00c57eaa07f5b
   6: <unknown>
   7: rust_metadata_rustc_f5b4f956815e4c315eb00c57eaa07f5b
   8: rustc::session::bug_fmt
   9: rustc::session::Session::incr_comp_session_dir
  10: rustc_incremental::persist::load::load_dep_graph
  11: <unknown>
  12: rustc_driver::driver::compile_input
  13: rustc_driver::run_compiler
  14: <unknown>
  15: <unknown>
  16: __rust_maybe_catch_panic
  17: <unknown>
  18: rust_metadata_std_e973fcbcfde4db1b7f5619ab17536071
  19: rust_metadata_std_e973fcbcfde4db1b7f5619ab17536071
  20: <unknown>

error: Could not compile `build_helper`.

I have not yet figured out what the problem is, but I can work-around the
issue by setting CARGO_INCREMENTAL=0 in the build environment.

Would it be possible to disable incremental builds on sparc64 by default
until this issue has been resolved? I assume that the problem is that
the incremental builds are not 100% thread-safe yet and might cause issues
on SPARC servers which often have many CPUs available.

Thanks,
Adrian

--
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaubitz at debian.org
`. `'   Freie Universitaet Berlin - glaubitz at physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913



More information about the Pkg-rust-maintainers mailing list