-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
arm64 OTP 25-rc2 segfaults during compilation of parsetools on FreeBSD 13.0-RELEASE+ #5817
Comments
|
Thanks for your report! It would be nice to know where it crashes, can you try the following? |
|
well the main thing that stands out to me is the warning: cerlI couldn't get cerl to work, but I tried this: is that useful? I've also asked on asmjit about getting FreeBSD & arm64 added to their CI, this will help in the long term. |
|
Yes, that's very useful. By the way, you can start the emulator under LLDB with It seems to crash when it clears the instruction cache for the generated code. Just as a sanity check I'd like to see if The values of |
|
hmm the cerl is still grumpy, not sure what lldb is trying to do here, confused about the script type perhaps? We just blitzed past my lldb skills so hope this is what you need: |
|
That's weird. FreeBSD seems to set SCTLR_EL1.UCI so we should be allowed to use What processor are you using? |
|
I have a few here:
|
|
for my reference, I set the following sysctls while doing this. Same results on both CPUs. |
|
Some background reading for those who are as confused by this as I am.
Andy notes that if a load occurs before |
|
building 14.0-CURRENT with ae9221b8 certainly finished compiling erts without issue, so I assume that's sufficient. Erlang/OTP 25 [RELEASE CANDIDATE 2] [erts-13.0] [source] [64-bit] [smp:32:32] [ds:32:32:10] [async-threads:1] [jit] [sharing-preserving]
Eshell V13.0 (abort with ^G)
1> erlang:system_info(emu_flavor).
jit
2> os:type().
{unix,freebsd}
3> os:version().
{14,0,0}I will keep this open until I get a definitive patch into FreeBSD src. @jhogberg thanks for the debugging expertise! Is there any suitable |
|
reported upstream in FreeBSD |
Nothing that will catch this issue in specific, it's pretty well-isolated. Otherwise I think the ordinary test suites will do. :) https://github.com/erlang/otp/blob/master/HOWTO/TESTING.md
As an aside, we don't need |
|
Using https://cgit.freebsd.org/src/commit/?id=029c1c4828aab451ba262cd4e2e1d9362cf18b76 & wrt test suite, I see some failures, but nothing that looks relevant for JIT. Let me know if you want the ct logs, they're large. OTP24 pre-JITOTP25 + JIT |
Sweet :)
I'd be amiss not to mention @bjorng, he did at least as much work on the ARM JIT as I did. :)
Sure, we don't have all that many ARM variants to test on so it would be nice to see the logs, or at least know which cases failed. |
|
Praise duly amended! I'll send test output privately. |
Describe the bug
arm64 OTP 25-rc2 segfaults during compilation of parsetools on FreeBSD 13.0-RELEASE+.
To Reproduce
Expected behavior
pure jit goodness all the time, from compile to runtime.
Affected versions
OTP 25-rc2.
Additional context
The text was updated successfully, but these errors were encountered: