Skip to content
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

net: BenchmarkUDP6LinkLocalUnicast hangs #43449

Open
josharian opened this issue Dec 31, 2020 · 1 comment
Open

net: BenchmarkUDP6LinkLocalUnicast hangs #43449

josharian opened this issue Dec 31, 2020 · 1 comment
Labels
NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Milestone

Comments

@josharian
Copy link
Contributor

What version of Go are you using (go version)?

go version devel +95ce805d14 Thu Dec 31 02:24:55 2020 +0000 darwin/amd64

Does this issue reproduce with the latest release?

Yes: tip, 1.15, and 1.14, and maybe older.

What operating system and processor architecture are you using (go env)?

go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN="/Users/josh/bin"
GOCACHE="/Users/josh/Library/Caches/go-build"
GOENV="/Users/josh/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/josh/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/josh"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/Users/josh/go/tip"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/Users/josh/go/tip/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="devel +95ce805d14 Thu Dec 31 02:24:55 2020 +0000"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/josh/go/tip/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/1t/n61cbvls5bl293bbb0zyypqw0000gn/T/go-build79030191=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?

$ go test -bench=BenchmarkUDP6LinkLocalUnicast -run=NONE net 

What did you expect to see?

Benchmark results.

What did you see instead?

Hang.

SIGQUIT says:

^\SIGQUIT: quit
PC=0x7fff692d4882 m=0 sigcode=0

goroutine 0 [idle]:
runtime.pthread_cond_wait(0x143d9b8, 0x143d978, 0x7fff00000000)
	/Users/josh/go/tip/src/runtime/sys_darwin.go:428 +0x39
runtime.semasleep(0xffffffffffffffff, 0x7ffe00000000)
	/Users/josh/go/tip/src/runtime/os_darwin.go:63 +0x8d
runtime.notesleep(0x143d770)
	/Users/josh/go/tip/src/runtime/lock_sema.go:181 +0xdb
runtime.mPark()
	/Users/josh/go/tip/src/runtime/proc.go:1273 +0x39
runtime.stopm()
	/Users/josh/go/tip/src/runtime/proc.go:2186 +0x92
runtime.findrunnable(0xc000028000, 0x0)
	/Users/josh/go/tip/src/runtime/proc.go:2845 +0x72e
runtime.schedule()
	/Users/josh/go/tip/src/runtime/proc.go:3054 +0x2d7
runtime.park_m(0xc000102a80)
	/Users/josh/go/tip/src/runtime/proc.go:3203 +0x9d
runtime.mcall(0x106f936)
	/Users/josh/go/tip/src/runtime/asm_amd64.s:323 +0x5b

goroutine 1 [chan receive]:
testing.(*B).run1(0xc000014240, 0xc000014240)
	/Users/josh/go/tip/src/testing/benchmark.go:234 +0xa5
testing.(*B).Run(0xc000182480, 0x12b0274, 0x1d, 0x12b9638, 0x10e6400)
	/Users/josh/go/tip/src/testing/benchmark.go:667 +0x373
testing.runBenchmarks.func1(0xc000182480)
	/Users/josh/go/tip/src/testing/benchmark.go:541 +0x78
testing.(*B).runN(0xc000182480, 0x1)
	/Users/josh/go/tip/src/testing/benchmark.go:192 +0xeb
testing.runBenchmarks(0x12a64ab, 0x3, 0xc0001a00f0, 0x14323a0, 0x1a, 0x1a, 0x143d020)
	/Users/josh/go/tip/src/testing/benchmark.go:550 +0x3d1
testing.(*M).Run(0xc0001d2000, 0x0)
	/Users/josh/go/tip/src/testing/testing.go:1424 +0x51d
net.TestMain(0xc0001d2000)
	/Users/josh/go/tip/src/net/main_test.go:52 +0x39
main.main()
	_testmain.go:575 +0x165

goroutine 36 [IO wait]:
internal/poll.runtime_pollWait(0x8c8e5b0, 0x72, 0x0)
	/Users/josh/go/tip/src/runtime/netpoll.go:222 +0x55
internal/poll.(*pollDesc).wait(0xc0001d3398, 0x72, 0x0, 0x1, 0x0)
	/Users/josh/go/tip/src/internal/poll/fd_poll_runtime.go:87 +0x45
internal/poll.(*pollDesc).waitRead(...)
	/Users/josh/go/tip/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).ReadFrom(0xc0001d3380, 0xc000018307, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0)
	/Users/josh/go/tip/src/internal/poll/fd_unix.go:222 +0x1e6
net.(*netFD).readFrom(0xc0001d3380, 0xc000018307, 0x1, 0x1, 0xc00004ed60, 0x1187776, 0xc0001d3300, 0xc000018307, 0x1)
	/Users/josh/go/tip/src/net/fd_posix.go:61 +0x5b
net.(*UDPConn).readFrom(0xc000196020, 0xc000018307, 0x1, 0x1, 0x1, 0x0, 0x0, 0x100fab8)
	/Users/josh/go/tip/src/net/udpsock_posix.go:47 +0x6a
net.(*UDPConn).ReadFrom(0xc000196020, 0xc000018307, 0x1, 0x1, 0x12f8720, 0xc000184f30, 0x1, 0x0, 0x0)
	/Users/josh/go/tip/src/net/udpsock.go:118 +0x5d
net.BenchmarkUDP6LinkLocalUnicast(0xc000014240)
	/Users/josh/go/tip/src/net/udpsock_test.go:48 +0x598
testing.(*B).runN(0xc000014240, 0x1)
	/Users/josh/go/tip/src/testing/benchmark.go:192 +0xeb
testing.(*B).run1.func1(0xc000014240)
	/Users/josh/go/tip/src/testing/benchmark.go:232 +0x57
created by testing.(*B).run1
	/Users/josh/go/tip/src/testing/benchmark.go:225 +0x7f

rax    0x104
rbx    0x2
rcx    0x7ffeefbff2f8
rdx    0x1100
rdi    0x143d9b8
rsi    0x110100001200
rbp    0x7ffeefbff390
rsp    0x7ffeefbff2f8
r8     0x0
r9     0xa0
r10    0x0
r11    0x202
r12    0x143d9b8
r13    0x16
r14    0x110100001200
r15    0xb7dadc0
rip    0x7fff692d4882
rflags 0x203
cs     0x7
fs     0x0
gs     0x0
exit status 2
FAIL	net	22.978s
@toothrot toothrot added the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Jan 5, 2021
@toothrot toothrot added this to the Backlog milestone Jan 5, 2021
@toothrot
Copy link
Contributor

toothrot commented Jan 5, 2021

/cc @bradfitz @ianlancetaylor

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Projects
None yet
Development

No branches or pull requests

2 participants