-
Notifications
You must be signed in to change notification settings - Fork 49
Seeing ICE due to u32 overflow #214
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
For reproducing:
# Starting within Omicron repo...
cd nexus
cargo +nightly rustc --lib -- -Zself-profile -Zself-profile-events=default,query-keys And for context: $ rustc +nightly --version
rustc 1.76.0-nightly (6cf088810 2023-11-26) |
This looks similar to: This is consistently reproducible for me |
Also looks like rust-lang/rust#99282 |
2 tasks
My attempt to patch this exists in #216 |
Let's keep this open until the change has made it into the compiler. |
The update is in the nightly compiler now. Thanks again for implementing the fix, @smklein! |
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
I have a repo I'm attempting to profile with these instructions: https://blog.rust-lang.org/inside-rust/2020/02/25/intro-rustc-self-profile.html#profiling-the-compiler
This results in the following output:
Which appears to be the
unwrap
within:measureme/measureme/src/stringtable.rs
Lines 103 to 107 in 6b8bc6d
I noticed that the type of
StringId
is au32
:measureme/measureme/src/stringtable.rs
Line 77 in 6b8bc6d
And since we're calling
from_addr
, we care about that type too:measureme/measureme/src/serialization.rs
Lines 65 to 73 in 306a7d2
Why do we believe this will be limited to u32? As a small data point, the "...mm_profdata" file I was emitting looks like it's just over 4 GiB in size, which sorta aligns with the idea of a u32 overflow.
The text was updated successfully, but these errors were encountered: