-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
linux/riscv64 test failures #3832
Comments
cc @lrzlin |
According to https://github.com/lawrenceching/gitbook/blob/master/teamcity-is-reporting-unmet-requirements-docker.server.version-exists.md, I start the docker deamon, now it's up and running on the linux/riscv64 builder, and I could find the Linux-openEuler24.09-riscv64 in compatible agents. Maybe we could trigger the builds manually and see what happens? |
Alright. The agent is picking up builds however there are some failing tests: https://delve.teamcity.com/viewLog.html?buildId=63555&tab=buildResultsDiv&buildTypeId=Delve_linux_riscv64_1_23
|
This seems to be related with async preempt mechanism of go, I tried disable it in delve but doesn't help, loong64 used to have similar issue, they finally fixed this by making CLs to the go compiler itself, so maybe we should do the same.
Yes, I found this should also related with the go compiler, I tried loong64's delve pr on official go1.23.2 and their custom go1.22.6, the custom 1.22.6 compiler could pass these prologue skipping tests but the 1.23.2 couldn't. |
We could also simply adjust the test to ignore that message.
It should be possible to make those tests pass without changing the compiler. I'd check the disassembler output for the functions where the detection is failing. As it is, if this test fails several other tests will fail sporadically. |
Delete non-working prologue detection code and mark port as experimental. Updates go-delve#3832
Delete non-working prologue detection code and mark port as experimental. Updates go-delve#3832
Delete non-working prologue detection code and mark port as experimental. Updates go-delve#3832
Delete non-working prologue detection code and mark port as experimental. Updates #3832
@aarzilli Hi, I found there are more tests failed after deteled the prologue related code, is that means at least it's partially correct? Besides, by adding the prologue_end dwarf in |
It could be. I compared it to the code in stacksplit and to what its generated by the compiler and I didn't see any resemblance but maybe I missed something. But a bad prologue detection code is going to make many of the tests in our suite fail non-deterministically so I would have to take samples before and after to be confident just by looking at test failures.
The prologue end marker is not a workaround, it is the proper way to do it. |
Add prologue_end DWARF stmt for riscv64: https://go-review.googlesource.com/c/go/+/620295 |
It seems like the agent is now offline? |
Sorry, the server was down due to maintainance, I've restart the teamcity agent. |
Merged. |
The linux/riscv64 builder is not picking up linux/riscv64 builds. Looking at teamcity the problem seems to be this:
The text was updated successfully, but these errors were encountered: