-
Notifications
You must be signed in to change notification settings - Fork 18k
runtime: SIGSEGV in the new timer code #35367
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
Is there a way that we can reproduce the problem ourselves? |
@ianlancetaylor As I observe, somehow in A simple fix can be:
But I'm not sure it follows the right logic flow of new timer. |
(That simple fix would be clearly wrong, sorry.) I think it's a problem with a late change to |
Thanks for details explanation. That's why I said I'm not sure it follow the right logic. FWIW, I tried above simple fix, and |
The problem with skipping the change to |
Change https://golang.org/cl/205418 mentions this issue: |
@ianlancetaylor thanks for the detailed explanation. The change fixed the SIGSEGV issue in my tests. |
What version of Go are you using (
go version
)?go version devel +3c0fbeea7d Tue Nov 5 05:22:07 2019 +0000 darwin/amd64
What operating system and processor architecture are you using (
go env
)?GO111MODULE=""
GOARCH="amd64"
GOBIN="/Users/lni/gobin"
GOCACHE="/Users/lni/Library/Caches/go-build"
GOENV="/Users/lni/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/lni/go"
GOPRIVATE=""
GOPROXY="mirrors.aliyun.com/goproxy"
GOROOT="/Users/lni/src/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/Users/lni/src/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/lni/src/go/src/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/b5/ndb6rntd4ys0451zchd64p_m0000gn/T/go-build169346949=/tmp/go-build -gno-record-gcc-switches -fno-common"
What did you do?
One of my tests uses net.Conn.SetWriteDeadline(), it keeps crashing when using the latest devel version specified above.
What did you expect to see?
No SIGSEGV
What did you see instead?
SIGSEGV with the following stack trace:
The text was updated successfully, but these errors were encountered: