build-longbridge.yml (#2707) ships manylinux_2_39 riscv64 wheels only. Upstream also ships musllinux_1_2 wheels, but on the riscv64 runners the musl-hosted rustc (stable-riscv64gc-unknown-linux-musl, installed by rustup in quay.io/pypa/musllinux_1_2_riscv64) did not reliably finish the final compile of the longbridge-python cdylib. Every dependency crate compiled cleanly; every failure happened inside that one rustc invocation.
Results across 9 musllinux legs of longbridge 4.5.0:
- workspace default
lto = true (fat): 3 green (about 1 h 40 min to 2 h each), 1 SIGSEGV after about 11 min, 1 hang still running after 2 h when cancelled (run 37197520431)
CARGO_PROFILE_RELEASE_LTO=thin: 2 SIGSEGV after about 14 min, 2 hangs still running after 1 h 45 min when cancelled (run 37212202146)
rustc printed nothing before the SIGSEGVs. The glibc-hosted toolchain built the same tree in the manylinux image: 4 of 4 green with thin LTO, and 4 of 5 with fat LTO (one abort with double free or corruption (out)).
The root cause has not been identified. Candidates include a threading or stack-size problem specific to the musl host build of rustc/LLVM on riscv64. Re-add the musllinux leg once a newer rustc builds this crate reliably.
build-longbridge.yml(#2707) ships manylinux_2_39 riscv64 wheels only. Upstream also ships musllinux_1_2 wheels, but on the riscv64 runners the musl-hosted rustc (stable-riscv64gc-unknown-linux-musl, installed by rustup inquay.io/pypa/musllinux_1_2_riscv64) did not reliably finish the final compile of thelongbridge-pythoncdylib. Every dependency crate compiled cleanly; every failure happened inside that one rustc invocation.Results across 9 musllinux legs of longbridge 4.5.0:
lto = true(fat): 3 green (about 1 h 40 min to 2 h each), 1 SIGSEGV after about 11 min, 1 hang still running after 2 h when cancelled (run 37197520431)CARGO_PROFILE_RELEASE_LTO=thin: 2 SIGSEGV after about 14 min, 2 hangs still running after 1 h 45 min when cancelled (run 37212202146)rustc printed nothing before the SIGSEGVs. The glibc-hosted toolchain built the same tree in the manylinux image: 4 of 4 green with thin LTO, and 4 of 5 with fat LTO (one abort with
double free or corruption (out)).The root cause has not been identified. Candidates include a threading or stack-size problem specific to the musl host build of rustc/LLVM on riscv64. Re-add the musllinux leg once a newer rustc builds this crate reliably.