-
Notifications
You must be signed in to change notification settings - Fork 18k
runtime: runtime crashes, reproducer same as #20427 #36371
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
Comments
/cc @aclements @ianlancetaylor @rhysh, since all three were involved in the original issue and CL |
Tell us more about the machines on which the program crashes. Is there any thing that distinguishes systems where the program crashes from systems where it does not crash? Can you attach the output of |
@ianlancetaylor Also, |
Tell us more about the machines on which the program crashes. Is there any thing that distinguishes systems where the program crashes from systems where it does not crash? |
3.18 is not the default kernel for CentOS 7, 3.10 is. I guess the kernel is provided by http://elrepo.org. Since you also state that go build crashes, there might be a problem with the specific kernel build used on your servers. |
Thanks for the That address suggests that the crash is happening because if sg.elem != nil {
sendDirect(c.elemtype, sg, ep)
sg.elem = nil
}
gp := sg.g
unlockf()
gp.param = unsafe.Pointer(sg)
if sg.releasetime != 0 {
sg.releasetime = cputicks()
}
goready(gp, skip+1) The crash is happening on the line Can you see if it makes any difference if you change syscall/exec_linux.go to change the line
to
? Thanks. |
the server is initialized and configured by our operation team. After asking our kernel team, they said it’s a bug in kernel 3.18 regarding ‘xsaves’. And they have confirmed that golang programs frequently encounter this bug. If this is the reason, then I think there should be no business with golang itself at all. For the integrality of this discussion: failing PC is not consistently 0x4051d8, but it‘s 0x4051d8 in most cases (e.g. 0x492791 and 0x4a4090 also appeared). After setting hasRawVforkSyscall to false, the program still crashes |
OK, thanks. Sounds like we can close this issue then. |
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (
go env
)?uname -a
Linux hostname 3.18.6-2.el7.centos.x86_64 #1 SMP Mon Oct 24 13:01:33 CST 2016 x86_64 x86_64 x86_64 GNU/Linux
go env
OutputWhat did you do?
The program crash randomly on some specific servers, I've met this problem when using go1.12.4 about half year ago(issue #31538 ), but can't find a reproducer back then.
Now I'm using go1.13.5 on the same server, the problem remains. After some googling I've find a reproducer through this blog which is extactly the same as the reproducer in issue #20437
What did you expect to see?
Run without crash
What did you see instead?
The text was updated successfully, but these errors were encountered: