-
Notifications
You must be signed in to change notification settings - Fork 13.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
infinite loop when compiling syntax
at stage1 ?
#61162
Comments
Looks like [target.'cfg(any(windows, unix))']
rustflags = ["-C", "target-cpu=native"]
# src: https://users.rust-lang.org/t/auto-vectorization-in-rust/24379/4 commenting out the Note: (If this OK: Commenting out that |
Not sure how relevant this is, but the 100% CPU usage happens when I just run this, but shouldn't it instead just return to prompt?
|
Parallel compiler builds are broken currently, you should disable it or cherry pick #60967 |
Thank you mati865! also works with that patch and
So, any chance that this infinite loop(or what) can be avoided in the future? Maybe fail-fast instead? Otherwise, it will likely happen again in some other case, I'd wager. The above patch, although it works, seems more like a workaround for an undelaying cause! |
Cool!
ok, but that issue(#60846) says that it still compiled successfully eventually, whilst in my case it was still stuck at compiling that being said, since you're Cheers! If I understand this correctly, by using a rustc compiler compiled with the workaround in #60967 should(??) also workaround the long compile time for
But I'm probably wrong about this and this workaround is only for the compiler itself! A similar workaround would probably be necessary for |
If I understand correctly underlying issue is the same, proving bounds has became really slow. Crate mentioned in the other issue is simpler than libsyntax so it's build became "only" 16 times higher. cc @Zoxc |
After about 13minutes rust compilation reaches compiling
syntax
at stage 1, and it uses 100% CPU aka one full core, on i7-8700K, and after about 4 hours(of me sleeping) I decided to stop it. I did this twice(the first time I had all kinds of debugging on but turning all of it off in a subsequent test still made it stall in the samesyntax
place) and I'm unsure if it's something I did (like"-C" "target-cpu=native"
) or this is an actual rust bug.Here's full console output from this last 4 hours of wasted electricity(looks like a constant 96W), and below is just a bit of it:
Here's
config.toml
used (minus the comments):I'm on Arch Linux, with these packages installed.
Rust source code tested was at commit:
Intentionally segfaulting the
rustc
process that's using 1 core at 100% for 4 hours, but in a subsequent compilation run (ie. re-ran./go
), results in the following huge(20k lines) stacktrace which can be seen here: https://gist.github.com/howaboutsynergy/19fa6c9cb11ed6f02f4d5a7f7f88db93One of the threads has over 3000 frames! But hey, maybe that's normal...
The text was updated successfully, but these errors were encountered: