Open cbandy opened 2 weeks ago
Related Issues and Documentation
(Emoji vote if this was helpful or unhelpful; more detailed feedback welcome in this discussion.)
What is your host machine? Are you running docker as a VM?
It looks like this is crashing in the C setenv function. What are your libc and C toolchain? Thanks.
See #63567
As mentioned elsewhere (#63567), libc setenv(3)
is not threadsafe - it's a fundamental flaw. Quite a few different libc calls can access the environment in parallel to setenv(3)
and cause a segfault (eg, getaddrinfo(3)
).
Some options to avoid the libc segfault:
func init
).
Go version
go1.22.6 linux/arm64
Output of
go env
in your module/workspace:What did you do?
I was running an application test suite against an arm64 K3s built with go1.22.6:
What did you see happen?
kubelet
reported that an exec probe failed withSIGSEGV
:full message
``` Liveness probe failed: SIGSEGV: segmentation violation PC=0xffff804967e4 m=0 sigcode=1 addr=0x0 goroutine 0 gp=0xffff80950d00 m=0 mp=0xffff80951580 [idle]: runtime: g 0 gp=0xffff80950d00: unknown pc 0xffff804967e4 stack: frame={sp:0xffffe77cbef0, fp:0x0} stack=[0xffffe77ad190,0xffffe77cc270) 0x0000ffffe77cbdf0: 0x0000ffff800dce40What did you expect to see?
No crash.
Perhaps the issue discussed in #59692 can also happen on arm64?