Closed
Description
Description
I'm trying to contribute to the telepresence opensource project (which uses gvisor) with the debugger (in goland), and I get the following stack trace:
# command-line-arguments
gvisor.dev/gvisor/pkg/refs.(*AtomicRefCount).DecRef: nosplit stack over 792 byte limit
gvisor.dev/gvisor/pkg/refs.(*AtomicRefCount).DecRef<1>
grows 48 bytes, calls gvisor.dev/gvisor/pkg/refs.(*AtomicRefCount).DecRefWithDestructor<1>
grows 144 bytes, calls gvisor.dev/gvisor/pkg/refs.(*weakRefList).Remove<1>
grows 128 bytes, calls gvisor.dev/gvisor/pkg/refs.(*weakRefEntry).SetNext<1>
grows 16 bytes, calls runtime.gcWriteBarrier<1>
grows 224 bytes, calls runtime.wbBufFlush<0>
grows 32 bytes, calls runtime.wbBufFlush<1>
grows 32 bytes, calls runtime.cgoCheckWriteBarrier<1>
[...]
I only get the issue with a Mac M1, and it builds correctly on anything running amd64 (linux & mac).
Steps to reproduce
Clone and build the project:
git clone [email protected]:telepresenceio/telepresence.git
make build
The error seems to be caused by the -N flag added by goland, so just building the project with it causes the issue.
go build -o telepresence -gcflags=all="-N" cmd/telepresence/*
runsc version
Not relevant for this issue, but the project uses this version:
gvisor.dev/gvisor v0.0.0-20220925003544-1e2f1a11bf64
docker version (if using docker)
No response
uname
Darwin MacBook-Pro.local 21.6.0 Darwin Kernel Version 21.6.0: Mon Aug 22 20:20:05 PDT 2022; root:xnu-8020.140.49~2/RELEASE_ARM64_T8101 arm64
kubectl (if using Kubernetes)
No response
repo state (if built from source)
No response
runsc debug logs (if available)
No response