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

runtime: TestNetpollBreak failures with netpollBreak did not interrupt netpoll #53434

Open
bcmills opened this issue Jun 17, 2022 · 3 comments
Open
Labels
compiler/runtime Issues related to the Go compiler and/or runtime. 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 Jun 17, 2022

From https://storage.googleapis.com/go-build-log/bf90716a/windows-amd64-longtest_a1003c10.log (a windows-amd64-longtest SlowBot on CL 404854):

##### GOMAXPROCS=2 runtime -cpu=1,2,4 -quick
--- FAIL: TestNetpollBreak (10.00s)
    proc_test.go:1136: netpollBreak did not interrupt netpoll: slept for: 10.003871s
FAIL
FAIL	runtime	573.743s
FAIL
2022/06/17 20:32:37 Failed: exit status 1

greplogs -l -e 'FAIL: TestNetpollBreak .*(?:\n .*)* netpollBreak did not interrupt netpoll' --since=2021-01-01
2021-11-02T18:01:20-629ffeb/linux-386-longtest
2021-10-21T23:48:53-3beab0c/windows-arm64-10

I don't see any failures in the logs for 2022 (apart from the SlowBot mentioned above).

See previously #35075.

(CC @golang/runtime)

@bcmills bcmills added the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Jun 17, 2022
@bcmills bcmills added this to the Backlog milestone Jun 17, 2022
@gopherbot gopherbot added the compiler/runtime Issues related to the Go compiler and/or runtime. label Jul 7, 2022
@prattmic
Copy link
Member

prattmic commented Aug 5, 2022

2022-02-01T15:39:16-9152e21/plan9-amd64-0intro

This could be related (netpollBreak stuck in runnable).

@prattmic prattmic changed the title runtime: TestNetpollBreak failures with netpoolBreak did not interrupt netpoll runtime: TestNetpollBreak failures with netpollBreak did not interrupt netpoll Aug 5, 2022
@prattmic
Copy link
Member

prattmic commented Aug 5, 2022

I find it a bit suspicious that this has occurred on Linux and Windows since the netpollBreak mechanism is completely different between Linux and Windows.

The most obvious immediate cause would be that netpollWakeSig is not getting cleared properly and thus netpollBreak doesn't do anything.

@bcmills
Copy link
Contributor Author

bcmills commented Sep 21, 2022

Hmm. It seems like a good first step for this might be to replace the t.Errorf at the end of this test with something that produces more useful test failures.

Would it make sense to, say, invoke debug.SetTraceback("system") and then terminate the test with a panic to dump the running goroutines?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compiler/runtime Issues related to the Go compiler and/or runtime. NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Projects
Development

No branches or pull requests

3 participants