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/pprof: TestLabelSystemstack failure on linux-arm #67023

Open
mknyszek opened this issue Apr 24, 2024 · 4 comments
Open

runtime/pprof: TestLabelSystemstack failure on linux-arm #67023

mknyszek opened this issue Apr 24, 2024 · 4 comments
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

@mknyszek
Copy link
Contributor

mknyszek commented Apr 24, 2024

#!watchflakes
post <- pkg == "runtime/pprof" && test == "TestLabelSystemstack"

2024-04-03 15:35 go1.21-linux-arm release-branch.go1.21@d8392e69 runtime/pprof.TestLabelSystemstack [ABORT] (log)

@gopherbot gopherbot added the compiler/runtime Issues related to the Go compiler and/or runtime. label Apr 24, 2024
@mknyszek mknyszek added this to the Go1.23 milestone Apr 24, 2024
@mknyszek
Copy link
Contributor Author

In triage, this looks like a timer failed to fire. A time.Sleep of 100 milliseconds never woke up. I wonder if this is fixed in the new timer changes?

@mknyszek mknyszek modified the milestones: Go1.23, Backlog Apr 24, 2024
@mknyszek mknyszek added NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided. labels Apr 24, 2024
@mknyszek
Copy link
Contributor Author

Given that we rewrote the timer implementation on tip, this only happened once, and only on Go 1.21, let's just wait for more failures.

@prattmic
Copy link
Member

Note that there are 2 different 100ms sleeps, both of which failed to wake.

goroutine 26699 [sleep, 9 minutes]:
runtime.gopark(0x1e38c4, 0x184a030, 0x13, 0x13, 0x1)
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/proc.go:398 +0x104 fp=0x158ff8c sp=0x158ff78 pc=0x53078
time.Sleep(0x5f5e100)
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/time.go:195 +0x16c fp=0x158ffa8 sp=0x158ff8c pc=0x8886c
runtime/pprof.profileWriter({0x211d3c, 0x1a67a58})
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/pprof/pprof.go:809 +0x58 fp=0x158ffe0 sp=0x158ffa8 pc=0x16e07c
runtime/pprof.StartCPUProfile.func2()
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/pprof/pprof.go:794 +0x30 fp=0x158ffec sp=0x158ffe0 pc=0x16dfa4
runtime.goexit()
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/asm_arm.s:859 +0x4 fp=0x158ffec sp=0x158ffec pc=0x8a760
created by runtime/pprof.StartCPUProfile in goroutine 26698
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/pprof/pprof.go:794 +0x13c

goroutine 26698 [sleep, 9 minutes]:
runtime.gopark(0x1e38c4, 0x184a060, 0x13, 0x13, 0x1)
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/proc.go:398 +0x104 fp=0x148dd0c sp=0x148dcf8 pc=0x53078
time.Sleep(0x5f5e100)
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/time.go:195 +0x16c fp=0x148dd28 sp=0x148dd0c pc=0x8886c
runtime/pprof.parallelLabelHog({0x21249c, 0x1a67a70}, 0x5f5e100, 0x64)
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/pprof/pprof_test.go:1992 +0xfc fp=0x148dd44 sp=0x148dd28 pc=0x18d670
runtime/pprof.TestLabelSystemstack.func1.1({0x21249c, 0x1a67a70})
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/pprof/pprof_test.go:1885 +0x3c fp=0x148dd5c sp=0x148dd44 pc=0x18ce90
runtime/pprof.Do({0x21245c, 0x318ba0}, {{0x15f7d20, 0x1, 0x1}}, 0x148ddd0)
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/pprof/runtime.go:51 +0xbc fp=0x148dd98 sp=0x148dd5c pc=0x17a860
runtime/pprof.TestLabelSystemstack.func1(0x5f5e100)
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/pprof/pprof_test.go:1884 +0x1d0 fp=0x148ddfc sp=0x148dd98 pc=0x18ce18
runtime/pprof.testCPUProfile(0x17be000, 0x148df74, 0x148def0)
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/pprof/pprof_test.go:484 +0x268 fp=0x148de9c sp=0x148ddfc pc=0x181868
runtime/pprof.TestLabelSystemstack(0x17be000)
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/pprof/pprof_test.go:1883 +0xd4 fp=0x148df94 sp=0x148de9c pc=0x18c178
testing.tRunner(0x17be000, 0x1e34f0)
	/home/swarming/.swarming/w/ir/x/w/goroot/src/testing/testing.go:1595 +0x124 fp=0x148dfe0 sp=0x148df94 pc=0xff968
testing.(*T).Run.func1()
	/home/swarming/.swarming/w/ir/x/w/goroot/src/testing/testing.go:1648 +0x30 fp=0x148dfec sp=0x148dfe0 pc=0x10095c
runtime.goexit()
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/asm_arm.s:859 +0x4 fp=0x148dfec sp=0x148dfec pc=0x8a760
created by testing.(*T).Run in goroutine 1
	/home/swarming/.swarming/w/ir/x/w/goroot/src/testing/testing.go:1648 +0x3f0

@gopherbot
Copy link
Contributor

Found new dashboard test flakes for:

#!watchflakes
post <- pkg == "runtime/pprof" && test == "TestLabelSystemstack"
2024-04-03 15:35 go1.21-linux-arm release-branch.go1.21@d8392e69 runtime/pprof.TestLabelSystemstack [ABORT] (log)
=== RUN   TestLabelSystemstack
SIGQUIT: quit
PC=0x8b78c m=0 sigcode=0

goroutine 0 [idle]:
runtime.futex()
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/sys_linux_arm.s:416 +0x1c fp=0xffab15a8 sp=0xffab15a8 pc=0x8b78c
runtime.futexsleep(0x3080d0, 0x0, 0xffffffffffffffff)
	/home/swarming/.swarming/w/ir/x/w/goroot/src/runtime/os_linux.go:69 +0x60 fp=0xffab15d0 sp=0xffab15a8 pc=0x4b670
runtime.notesleep(0x3080d0)
...
r9      0x308750
r10     0x307b48
fp      0x6
ip      0x4
sp      0xffab15a8
lr      0x4b670
pc      0x8b78c
cpsr    0xa0800010
fault   0x0
*** Test killed with quit: ran too long (10m0s).

watchflakes

@seankhliao seankhliao removed the WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided. label Jul 14, 2024
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
Status: No status
Development

No branches or pull requests

4 participants