-
Notifications
You must be signed in to change notification settings - Fork 14k
Closed
Labels
C-bugCategory: This is a bug.Category: This is a bug.E-needs-bisectionCall for participation: This issue needs bisection: https://github.com/rust-lang/cargo-bisect-rustcCall for participation: This issue needs bisection: https://github.com/rust-lang/cargo-bisect-rustcO-AArch64Armv8-A or later processors in AArch64 modeArmv8-A or later processors in AArch64 modeS-has-mcveStatus: A Minimal Complete and Verifiable Example has been found for this issueStatus: A Minimal Complete and Verifiable Example has been found for this issue
Description
I tried this code:
echo 'pub fn main() { std::fs::read_dir("foo").unwrap(); }' | rustc +nightly - -g -Cpanic=abort && RUST_BACKTRACE=1 ./rust_outI expected to see this happen: Panics normally.
Instead, this happened: Backtrace lists thousands of duplicate unwrap calls and GDB reports a stack corruption.
Meta
rustc --version --verbose:
rustc 1.68.0-nightly (0b90256ad 2023-01-13)
binary: rustc
commit-hash: 0b90256ada21c6a81b4c18f2c7a23151ab5fc232
commit-date: 2023-01-13
host: aarch64-unknown-linux-gnu
release: 1.68.0-nightly
LLVM version: 15.0.6
but happened at least as early as nightly-2022-12-13. Doesn't happen on x86_64 or without -Cpanic=abort.
Backtrace
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', <anon>:1:42
stack backtrace:
0: rust_begin_unwind
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/std/src/panicking.rs:575:5
1: core::panicking::panic_fmt
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/panicking.rs:64:14
2: core::result::unwrap_failed
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1790:5
3: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
4: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
5: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
6: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
7: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
8: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
9: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
10: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
11: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
12: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
13: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
14: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
15: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
16: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
17: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
18: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
19: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
20: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
21: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
22: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
23: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
24: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
25: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
26: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
27: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
28: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
29: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
30: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
31: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
32: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
33: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
34: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
35: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
36: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
37: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
38: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
39: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
40: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
41: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
42: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
43: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
44: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
45: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
46: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
47: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
48: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
49: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
50: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
51: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
52: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
53: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
54: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
55: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
56: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
57: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
58: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
59: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
60: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
61: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
62: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
63: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
64: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
65: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
66: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
67: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
68: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
69: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
70: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
71: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
72: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
73: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
74: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
75: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
76: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
77: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
78: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
79: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
80: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
81: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
82: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
83: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
84: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
85: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
86: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
87: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
88: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
89: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
90: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
91: core::result::Result<T,E>::unwrap
at /rustc/0b90256ada21c6a81b4c18f2c7a23151ab5fc232/library/core/src/result.rs:1112:23
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
Aborted (core dumped)
GDB shows
#0 __pthread_kill_implementation (threadid=281474842419232, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
#1 0x0000fffff7e5f254 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
#2 0x0000fffff7e1a67c in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3 0x0000fffff7e07130 in __GI_abort () at ./stdlib/abort.c:79
#4 0x0000aaaaaaac5624 in panic_abort::__rust_start_panic::abort () at library/panic_abort/src/lib.rs:42
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
Metadata
Metadata
Assignees
Labels
C-bugCategory: This is a bug.Category: This is a bug.E-needs-bisectionCall for participation: This issue needs bisection: https://github.com/rust-lang/cargo-bisect-rustcCall for participation: This issue needs bisection: https://github.com/rust-lang/cargo-bisect-rustcO-AArch64Armv8-A or later processors in AArch64 modeArmv8-A or later processors in AArch64 modeS-has-mcveStatus: A Minimal Complete and Verifiable Example has been found for this issueStatus: A Minimal Complete and Verifiable Example has been found for this issue