Skip to content

Conversation

Hoverbear
Copy link
Contributor

@Hoverbear Hoverbear commented Oct 7, 2025

While syncing #143613 into Ferrocene as part of ferrocene/ferrocene#1803, we noted a failure on our QNX targets:

---- [ui] tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs stdout ---- error: test did not exit with success! code=Some(134) so test would pass with `run-crash` status: exit status: 134 command: RUSTC="/home/ci/project/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" RUST_TEST_THREADS="1" "/home/ci/project/build/x86_64-unknown-linux-gnu/stage1-tools-bin/remote-test-client" "run" "0" "/home/ci/project/build/x86_64-unknown-linux-gnu/test/ui/panics/panic-abort-backtrace-without-debuginfo/a" --- stdout ------------------------------- uploaded "/home/ci/project/build/x86_64-unknown-linux-gnu/test/ui/panics/panic-abort-backtrace-without-debuginfo/a", waiting for result died due to signal 6 ------------------------------------------ --- stderr ------------------------------- thread 'main' (1) panicked at /home/ci/project/tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs:39:9: ERROR: no `this_function_must_be_in_the_backtrace` in stderr! actual stderr: thread 'main' (1) panicked at /home/ci/project/tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs:27:5: generate panic backtrace stack backtrace: 0: 0x4e66a53643 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h55e010263b1e3169 1: 0x4e66a68cd2 - core::fmt::write::h0d6e2e8752abc333 2: 0x4e66a16919 - std::io::Write::write_fmt::h71c4c024d832b384 3: 0x4e66a1f8e2 - std::sys::backtrace::BacktraceLock::print::hdd80dfdf90bb7100 4: 0x4e66a221e0 - std::panicking::default_hook::{{closure}}::h77758f25a686500f 5: 0x4e66a21f69 - std::panicking::default_hook::ha63f7d476af6c267 6: 0x4e66a22999 - std::panicking::panic_with_hook::h3a36a8a0f0dd8ccd 7: 0x4e66a21cac - std::panicking::begin_panic::{{closure}}::h570dedb92e232392 8: 0x4e66a1fa69 - std::sys::backtrace::__rust_end_short_backtrace::h5366eec354f92733 9: 0x4e669f9589 - std::panicking::begin_panic::h04a4bd4c33dd4056 10: 0x4e66a00aca - panic_abort_backtrace_without_debuginfo::and_this_function_too::h5b034b94cbe9c3d3 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ------------------------------------------ ---- [ui] tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs stdout end ---- failures: [ui] tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs test result: FAILED. 19958 passed; 1 failed; 328 ignored; 0 measured; 0 filtered out; finished in 1827.71s Some tests failed in compiletest suite=ui mode=ui host=x86_64-unknown-linux-gnu target=x86_64-pc-nto-qnx710 Build completed unsuccessfully in 0:43:28 Exited with code exit status 1 

This patch applies the same fix as the one found in #143613 of adding the default_uwtable: true to the target.

I've run it locally, when ferrocene/ferrocene#1803 merges we'll know it has passed within our CI, which is about a close an analog as I can offer to Rust.

@rustbot
Copy link
Collaborator

rustbot commented Oct 7, 2025

These commits modify compiler targets.
(See the Target Tier Policy.)

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Oct 7, 2025
@rustbot
Copy link
Collaborator

rustbot commented Oct 7, 2025

r? @BoxyUwU

rustbot has assigned @BoxyUwU.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

Copy link
Member

@wesleywiser wesleywiser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks reasonable enough to me but let's cc the target maintainers: @flba-eb @gh-tr @jonathanpallant @japaric

View changes since this review

@BoxyUwU
Copy link
Member

BoxyUwU commented Oct 14, 2025

r? compiler

@rustbot rustbot assigned jackh726 and unassigned BoxyUwU Oct 14, 2025
@jackh726
Copy link
Member

Going to assign to wesley, since they seem to have given approval pending any feedback from target maintainers

r? @wesleywiser

@rustbot rustbot assigned wesleywiser and unassigned jackh726 Oct 14, 2025
@rustbot
Copy link
Collaborator

rustbot commented Oct 14, 2025

wesleywiser is currently at their maximum review capacity.
They may take a while to respond.

@jonathanpallant
Copy link
Contributor

I don't know enough about unwinding on QNX to comment here.

@flba-eb
Copy link
Contributor

flba-eb commented Oct 14, 2025

I cannot test this right now, but it seems to make sense. Also, risk is low as the default can easily be changed at the command line. Thanks, @Hoverbear !

@wesleywiser
Copy link
Member

Target maintainers seem generally in favor so

@bors r+ rollup

@bors
Copy link
Collaborator

bors commented Oct 17, 2025

📌 Commit 1dd0a01 has been approved by wesleywiser

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Oct 17, 2025
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Oct 17, 2025
…tables-qnx, r=wesleywiser Fix backtraces with `-C panic=abort` on qnx; emit unwind tables by default While syncing rust-lang#143613 into Ferrocene as part of ferrocene/ferrocene#1803, we noted a failure on our QNX targets: ``` ---- [ui] tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs stdout ---- error: test did not exit with success! code=Some(134) so test would pass with `run-crash` status: exit status: 134 command: RUSTC="/home/ci/project/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" RUST_TEST_THREADS="1" "/home/ci/project/build/x86_64-unknown-linux-gnu/stage1-tools-bin/remote-test-client" "run" "0" "/home/ci/project/build/x86_64-unknown-linux-gnu/test/ui/panics/panic-abort-backtrace-without-debuginfo/a" --- stdout ------------------------------- uploaded "/home/ci/project/build/x86_64-unknown-linux-gnu/test/ui/panics/panic-abort-backtrace-without-debuginfo/a", waiting for result died due to signal 6 ------------------------------------------ --- stderr ------------------------------- thread 'main' (1) panicked at /home/ci/project/tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs:39:9: ERROR: no `this_function_must_be_in_the_backtrace` in stderr! actual stderr: thread 'main' (1) panicked at /home/ci/project/tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs:27:5: generate panic backtrace stack backtrace: 0: 0x4e66a53643 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h55e010263b1e3169 1: 0x4e66a68cd2 - core::fmt::write::h0d6e2e8752abc333 2: 0x4e66a16919 - std::io::Write::write_fmt::h71c4c024d832b384 3: 0x4e66a1f8e2 - std::sys::backtrace::BacktraceLock::print::hdd80dfdf90bb7100 4: 0x4e66a221e0 - std::panicking::default_hook::{{closure}}::h77758f25a686500f 5: 0x4e66a21f69 - std::panicking::default_hook::ha63f7d476af6c267 6: 0x4e66a22999 - std::panicking::panic_with_hook::h3a36a8a0f0dd8ccd 7: 0x4e66a21cac - std::panicking::begin_panic::{{closure}}::h570dedb92e232392 8: 0x4e66a1fa69 - std::sys::backtrace::__rust_end_short_backtrace::h5366eec354f92733 9: 0x4e669f9589 - std::panicking::begin_panic::h04a4bd4c33dd4056 10: 0x4e66a00aca - panic_abort_backtrace_without_debuginfo::and_this_function_too::h5b034b94cbe9c3d3 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ------------------------------------------ ---- [ui] tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs stdout end ---- failures: [ui] tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs test result: FAILED. 19958 passed; 1 failed; 328 ignored; 0 measured; 0 filtered out; finished in 1827.71s Some tests failed in compiletest suite=ui mode=ui host=x86_64-unknown-linux-gnu target=x86_64-pc-nto-qnx710 Build completed unsuccessfully in 0:43:28 Exited with code exit status 1 ``` This patch applies the same fix as the one found in rust-lang#143613 of adding the `default_uwtable: true` to the target. I've run it locally, when ferrocene/ferrocene#1803 merges we'll know it has passed within our CI, which is about a close an analog as I can offer to Rust.
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Oct 17, 2025
…tables-qnx, r=wesleywiser Fix backtraces with `-C panic=abort` on qnx; emit unwind tables by default While syncing rust-lang#143613 into Ferrocene as part of ferrocene/ferrocene#1803, we noted a failure on our QNX targets: ``` ---- [ui] tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs stdout ---- error: test did not exit with success! code=Some(134) so test would pass with `run-crash` status: exit status: 134 command: RUSTC="/home/ci/project/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" RUST_TEST_THREADS="1" "/home/ci/project/build/x86_64-unknown-linux-gnu/stage1-tools-bin/remote-test-client" "run" "0" "/home/ci/project/build/x86_64-unknown-linux-gnu/test/ui/panics/panic-abort-backtrace-without-debuginfo/a" --- stdout ------------------------------- uploaded "/home/ci/project/build/x86_64-unknown-linux-gnu/test/ui/panics/panic-abort-backtrace-without-debuginfo/a", waiting for result died due to signal 6 ------------------------------------------ --- stderr ------------------------------- thread 'main' (1) panicked at /home/ci/project/tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs:39:9: ERROR: no `this_function_must_be_in_the_backtrace` in stderr! actual stderr: thread 'main' (1) panicked at /home/ci/project/tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs:27:5: generate panic backtrace stack backtrace: 0: 0x4e66a53643 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h55e010263b1e3169 1: 0x4e66a68cd2 - core::fmt::write::h0d6e2e8752abc333 2: 0x4e66a16919 - std::io::Write::write_fmt::h71c4c024d832b384 3: 0x4e66a1f8e2 - std::sys::backtrace::BacktraceLock::print::hdd80dfdf90bb7100 4: 0x4e66a221e0 - std::panicking::default_hook::{{closure}}::h77758f25a686500f 5: 0x4e66a21f69 - std::panicking::default_hook::ha63f7d476af6c267 6: 0x4e66a22999 - std::panicking::panic_with_hook::h3a36a8a0f0dd8ccd 7: 0x4e66a21cac - std::panicking::begin_panic::{{closure}}::h570dedb92e232392 8: 0x4e66a1fa69 - std::sys::backtrace::__rust_end_short_backtrace::h5366eec354f92733 9: 0x4e669f9589 - std::panicking::begin_panic::h04a4bd4c33dd4056 10: 0x4e66a00aca - panic_abort_backtrace_without_debuginfo::and_this_function_too::h5b034b94cbe9c3d3 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ------------------------------------------ ---- [ui] tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs stdout end ---- failures: [ui] tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs test result: FAILED. 19958 passed; 1 failed; 328 ignored; 0 measured; 0 filtered out; finished in 1827.71s Some tests failed in compiletest suite=ui mode=ui host=x86_64-unknown-linux-gnu target=x86_64-pc-nto-qnx710 Build completed unsuccessfully in 0:43:28 Exited with code exit status 1 ``` This patch applies the same fix as the one found in rust-lang#143613 of adding the `default_uwtable: true` to the target. I've run it locally, when ferrocene/ferrocene#1803 merges we'll know it has passed within our CI, which is about a close an analog as I can offer to Rust.
bors added a commit that referenced this pull request Oct 17, 2025
Rollup of 7 pull requests Successful merges: - #140153 (Implement `Debug` for `EncodeWide`) - #147454 (Fix backtraces with `-C panic=abort` on qnx; emit unwind tables by default) - #147468 (Implement fs api set_times and set_times_nofollow) - #147494 (std::thread spawn: Docs: Link to Builder::spawn; Make same.) - #147783 (bootstrap: migrate to object 0.37) - #147792 (Fix autodiff incorrectly applying fat-lto to proc-macro crates ) - #147809 (rustdoc: Fix passes order so intra-doc links are collected after stripping passes) r? `@ghost` `@rustbot` modify labels: rollup
bors added a commit that referenced this pull request Oct 18, 2025
Rollup of 8 pull requests Successful merges: - #140153 (Implement `Debug` for `EncodeWide`) - #145724 (the `#[track_caller]` shim should not inherit `#[no_mangle]`) - #147258 (iter repeat: panic on last) - #147454 (Fix backtraces with `-C panic=abort` on qnx; emit unwind tables by default) - #147468 (Implement fs api set_times and set_times_nofollow) - #147764 (Undo CopyForDeref assertion in const qualif) - #147805 (use module_child index as disambiguator for external items) - #147824 (docs: update Motor OS target docs) r? `@ghost` `@rustbot` modify labels: rollup
@bors bors merged commit 8527b54 into rust-lang:master Oct 18, 2025
10 checks passed
@rustbot rustbot added this to the 1.92.0 milestone Oct 18, 2025
rust-timer added a commit that referenced this pull request Oct 18, 2025
Rollup merge of #147454 - ferrocene:hoverbear/panic-abort-uwtables-qnx, r=wesleywiser Fix backtraces with `-C panic=abort` on qnx; emit unwind tables by default While syncing #143613 into Ferrocene as part of ferrocene/ferrocene#1803, we noted a failure on our QNX targets: ``` ---- [ui] tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs stdout ---- error: test did not exit with success! code=Some(134) so test would pass with `run-crash` status: exit status: 134 command: RUSTC="/home/ci/project/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" RUST_TEST_THREADS="1" "/home/ci/project/build/x86_64-unknown-linux-gnu/stage1-tools-bin/remote-test-client" "run" "0" "/home/ci/project/build/x86_64-unknown-linux-gnu/test/ui/panics/panic-abort-backtrace-without-debuginfo/a" --- stdout ------------------------------- uploaded "/home/ci/project/build/x86_64-unknown-linux-gnu/test/ui/panics/panic-abort-backtrace-without-debuginfo/a", waiting for result died due to signal 6 ------------------------------------------ --- stderr ------------------------------- thread 'main' (1) panicked at /home/ci/project/tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs:39:9: ERROR: no `this_function_must_be_in_the_backtrace` in stderr! actual stderr: thread 'main' (1) panicked at /home/ci/project/tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs:27:5: generate panic backtrace stack backtrace: 0: 0x4e66a53643 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h55e010263b1e3169 1: 0x4e66a68cd2 - core::fmt::write::h0d6e2e8752abc333 2: 0x4e66a16919 - std::io::Write::write_fmt::h71c4c024d832b384 3: 0x4e66a1f8e2 - std::sys::backtrace::BacktraceLock::print::hdd80dfdf90bb7100 4: 0x4e66a221e0 - std::panicking::default_hook::{{closure}}::h77758f25a686500f 5: 0x4e66a21f69 - std::panicking::default_hook::ha63f7d476af6c267 6: 0x4e66a22999 - std::panicking::panic_with_hook::h3a36a8a0f0dd8ccd 7: 0x4e66a21cac - std::panicking::begin_panic::{{closure}}::h570dedb92e232392 8: 0x4e66a1fa69 - std::sys::backtrace::__rust_end_short_backtrace::h5366eec354f92733 9: 0x4e669f9589 - std::panicking::begin_panic::h04a4bd4c33dd4056 10: 0x4e66a00aca - panic_abort_backtrace_without_debuginfo::and_this_function_too::h5b034b94cbe9c3d3 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ------------------------------------------ ---- [ui] tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs stdout end ---- failures: [ui] tests/ui/panics/panic-abort-backtrace-without-debuginfo.rs test result: FAILED. 19958 passed; 1 failed; 328 ignored; 0 measured; 0 filtered out; finished in 1827.71s Some tests failed in compiletest suite=ui mode=ui host=x86_64-unknown-linux-gnu target=x86_64-pc-nto-qnx710 Build completed unsuccessfully in 0:43:28 Exited with code exit status 1 ``` This patch applies the same fix as the one found in #143613 of adding the `default_uwtable: true` to the target. I've run it locally, when ferrocene/ferrocene#1803 merges we'll know it has passed within our CI, which is about a close an analog as I can offer to Rust.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

8 participants