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
runtime: Go 1.5.1 panic: workbuf is not empty #14502
Comments
What program is this? How to reproduce the crash?
Does it happen with Go 1.6?
|
It is a program of measuring network delay(about 20,000 ip addresses) using icmp ping and serves delay query from client. |
@EthanZhuang, Go 1.5.x is no longer maintained, except for serious security problems. Please try with Go 1.6, and verify your program has no data races. See https://blog.golang.org/race-detector If you have any races, Go makes no promises that it won't crash. |
CC @aclements in case he recognizes this. |
I do not recognize this. However, a lot of the code in this general vicinity has changed in 1.6. |
OK. Let me try go 1.6 and race-detector next week. Keep in touch then. |
@EthanZhuang, I'm going to go ahead and close this, but please reopen if you were able to reproduce it with 1.6. |
runtime: empty check fails b.log[0]= 0 b.log[1]= 0 b.log[2]= 0 b.log[3]= 0
runtime: empty check fails b.log[0]= 0 b.log[1]= 0 b.log[2]= 0 b.log[3]= 0
fatal error: workbuf is not empty
panic: fatal error: workbuf is not empty
runtime: empty check fails b.log[0]= 0 b.log[1]= 0 b.log[2]= 0 b.log[3]= 0
fatal error: workbuf is not empty
runtime error: index out of range
fatal error: panic holding locks
goroutine 154 [running]:
runtime.throw(0xa49370, 0x14)
/usr/local/go1.5/src/runtime/panic.go:527 +0x90 fp=0xc8205f9d18 sp=0xc8205f9d00
runtime.(_workbuf).checkempty(0x7f05f8559b00)
/usr/local/go1.5/src/runtime/mgcwork.go:275 +0x153 fp=0xc8205f9d50 sp=0xc8205f9d18
runtime.getempty(0x4cf628a, 0x0)
/usr/local/go1.5/src/runtime/mgcwork.go:288 +0x55 fp=0xc8205f9d80 sp=0xc8205f9d50
runtime.getpartialorempty(0x2a, 0xc81f7b51f3)
/usr/local/go1.5/src/runtime/mgcwork.go:332 +0x6e fp=0xc8205f9da0 sp=0xc8205f9d80
runtime.(_gcWork).put(0xc820022720, 0xc83095c180)
/usr/local/go1.5/src/runtime/mgcwork.go:83 +0x3c fp=0xc8205f9dc0 sp=0xc8205f9da0
runtime.greyobject(0xc83095c180, 0xc843520000, 0x13340, 0xc81f7b51f3, 0x7f0500000000, 0x7f05e04242c0, 0xc820022720)
/usr/local/go1.5/src/runtime/mgcmark.go:966 +0x2f1 fp=0xc8205f9e48 sp=0xc8205f9dc0
runtime.scanobject(0xc843520000, 0xc820022720)
/usr/local/go1.5/src/runtime/mgcmark.go:889 +0x2a1 fp=0xc8205f9f18 sp=0xc8205f9e48
runtime.gcDrainUntilPreempt(0xc820022720, 0x7d0)
/usr/local/go1.5/src/runtime/mgcmark.go:751 +0x152 fp=0xc8205f9f50 sp=0xc8205f9f18
runtime.gcBgMarkWorker(0xc820021500)
/usr/local/go1.5/src/runtime/mgc.go:1329 +0x474 fp=0xc8205f9fb8 sp=0xc8205f9f50
runtime.goexit()
/usr/local/go1.5/src/runtime/asm_amd64.s:1696 +0x1 fp=0xc8205f9fc0 sp=0xc8205f9fb8
created by runtime.gcBgMarkStartWorkers
/usr/local/go1.5/src/runtime/mgc.go:1239 +0x93
The text was updated successfully, but these errors were encountered: