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/http: apparent deadlock in CloseIdleConnections via net.(*netFD).Close #48667

Closed
bcmills opened this issue Sep 28, 2021 · 1 comment
Closed
Labels
FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Milestone

Comments

@bcmills
Copy link
Contributor

bcmills commented Sep 28, 2021

goroutine 3880 [semacquire, 2 minutes]:
runtime.gopark(0x60c9c518c0, 0x40001e45d0, 0x20, 0xf3, 0x60c9590284)
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/runtime/proc.go:366 +0xe8 fp=0x4000307b50 sp=0x4000307b30 pc=0x60c957aa78
runtime.goparkunlock(...)
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/runtime/proc.go:372
runtime.semacquire1(0x4000332428, 0xc, 0x1, 0x0)
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/runtime/sema.go:144 +0x214 fp=0x4000307bb0 sp=0x4000307b50 pc=0x60c958c0f4
internal/poll.runtime_Semacquire(0x731a529a28)
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/runtime/sema.go:61 +0x2c fp=0x4000307be0 sp=0x4000307bb0 pc=0x60c95a604c
internal/poll.(*FD).Close(0x4000332400)
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/internal/poll/fd_unix.go:116 +0x68 fp=0x4000307c10 sp=0x4000307be0 pc=0x60c95d3d28
net.(*netFD).Close(0x4000332400)
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/net/fd_posix.go:38 +0x44 fp=0x4000307c40 sp=0x4000307c10 pc=0x60c96d5f94
net.(*conn).Close(0x40001ba4b8)
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/net/net.go:207 +0x34 fp=0x4000307c80 sp=0x4000307c40 pc=0x60c96e1b04
net/http.(*persistConn).closeLocked(0x40001e66c0, {0x60c9973680, 0x4000038c40})
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/net/http/transport.go:2708 +0x10c fp=0x4000307d10 sp=0x4000307c80 pc=0x60c97c480c
net/http.(*persistConn).close(0x4000309de8, {0x60c9973680, 0x4000038c40})
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/net/http/transport.go:2693 +0xdc fp=0x4000307d60 sp=0x4000307d10 pc=0x60c97c464c
net/http.(*Transport).CloseIdleConnections(0x40001a6dc0)
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/net/http/transport.go:770 +0x1fc fp=0x4000307e20 sp=0x4000307d60 pc=0x60c97b9ebc
net/http_test.(*clientServerTest).close(0x40003b1700)
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/net/http/clientserver_test.go:45 +0x2c fp=0x4000307e40 sp=0x4000307e20 pc=0x60c980fe8c
net/http_test.TestTransportRequestWriteRoundTrip.func3.3()
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/net/http/transport_test.go:5851 +0x2c fp=0x4000307e60 sp=0x4000307e40 pc=0x60c98aef5c
net/http_test.TestTransportRequestWriteRoundTrip.func3(0x40005ff520)
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/net/http/transport_test.go:5875 +0x3d0 fp=0x4000307f60 sp=0x4000307e60 pc=0x60c98aee70
testing.tRunner(0x40005ff520, 0x400025dc10)
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/testing/testing.go:1389 +0x110 fp=0x4000307fb0 sp=0x4000307f60 pc=0x60c96283c0
testing.(*T).Run.func1()
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/testing/testing.go:1436 +0x30 fp=0x4000307fd0 sp=0x4000307fb0 pc=0x60c9629140
runtime.goexit()
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/runtime/asm_arm64.s:1259 +0x4 fp=0x4000307fd0 sp=0x4000307fd0 pc=0x60c95a9f14
created by testing.(*T).Run
	/data/data/com.termux/files/home/tmpdir/workdir-host-android-arm64-corellium-android/go/src/testing/testing.go:1436 +0x300

greplogs --dashboard -md -l -e ^net/http_test\\.\\\(\\\*clientServerTest\\\)\\.close --since=2021-01-01

2021-09-27T22:22:04-52b23a5/android-arm64-corellium
2021-09-24T18:21:14-f6b5ffb/android-arm64-corellium
2021-09-22T20:53:48-41bb744/linux-arm64-packet
2021-09-17T18:33:15-70493b3/ios-arm64-corellium
2021-09-16T23:13:58-e09dcc2/android-arm64-corellium
2021-09-03T01:38:54-9f69a44/ios-arm64-corellium
2021-09-02T19:36:22-a8aa6cf/windows-arm64-10
2021-09-02T19:16:19-9633195/ios-arm64-corellium
2021-09-02T16:59:57-2a463a2/android-arm64-corellium
2021-09-02T09:25:10-6705191/linux-riscv64-jsing
2021-09-01T22:28:21-0bfd6fc/android-arm64-corellium
2021-08-28T04:46:13-0108177/windows-arm64-10
2021-08-21T11:23:14-8fff20f/netbsd-arm-bsiegert
2021-08-17T15:00:04-3001b0a/windows-arm64-10
2021-08-05T20:22:31-fd45e26/android-arm64-corellium
2021-07-26T22:15:24-bfbb288/ios-arm64-corellium
2021-07-20T19:54:36-d568e6e/ios-arm64-corellium
2021-06-30T01:29:49-c45e800/windows-arm64-10
2021-04-13T23:56:27-3462036/plan9-arm
2021-04-13T21:13:09-e512bc2/ios-arm64-corellium
2021-03-29T21:50:16-4e1bf8e/linux-arm64-packet
2021-03-15T20:48:37-8ed438c/aix-ppc64
2021-03-15T20:48:37-8ed438c/darwin-arm64-11_0-toothrot
2021-03-15T20:48:37-8ed438c/linux-s390x-ibm
2021-02-19T01:19:01-4da0188/ios-arm64-corellium

CC @neild @bradfitz

@bcmills bcmills added this to the Backlog milestone Sep 28, 2021
@bcmills bcmills added the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Sep 28, 2021
@bcmills
Copy link
Contributor Author

bcmills commented Oct 12, 2021

This looks like it may be a runtime bug: #48925.

@bcmills bcmills closed this as completed Oct 12, 2021
@golang golang locked and limited conversation to collaborators Oct 12, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
FrozenDueToAge 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