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

time: "P already set in timer" on windows-amd64-2008 #35272

Closed
bcmills opened this issue Oct 31, 2019 · 1 comment
Closed

time: "P already set in timer" on windows-amd64-2008 #35272

bcmills opened this issue Oct 31, 2019 · 1 comment

Comments

@bcmills
Copy link
Member

@bcmills bcmills commented Oct 31, 2019

windows-amd64-2008 (https://build.golang.org/log/01f32e494b3ea41bdb1b4c2c0df5d751c71a6b81):

fatal error: doaddtimer: P already set in timer

goroutine 139 [running]:
runtime.throw(0x63e871, 0x22)
	C:/workdir/go/src/runtime/panic.go:1045 +0x79 fp=0xc000281e50 sp=0xc000281e20 pc=0x432db9
runtime.doaddtimer(0xc00001a500, 0xc0003beae8, 0x58)
	C:/workdir/go/src/runtime/time.go:365 +0x18f fp=0xc000281ea8 sp=0xc000281e50 pc=0x45037f
runtime.addInitializedTimer(0xc0003beae8)
	C:/workdir/go/src/runtime/time.go:345 +0xcf fp=0xc000281ef0 sp=0xc000281ea8 pc=0x4501bf
runtime.resettimer(0xc0003beae8, 0x3c449869b0d)
	C:/workdir/go/src/runtime/time.go:692 +0x112 fp=0xc000281f10 sp=0xc000281ef0 pc=0x450c12
time.resetTimer(0xc0003beae8, 0x3c449869b0d)
	C:/workdir/go/src/runtime/time.go:306 +0x3c fp=0xc000281f30 sp=0xc000281f10 pc=0x44ffcc
time.(*Timer).Reset(0xc0003beae0, 0x34630b8a1ad, 0x646701)
	C:/workdir/go/src/time/sleep.go:129 +0x84 fp=0xc000281f68 sp=0xc000281f30 pc=0x48af24
time_test.TestConcurrentTimerReset.func2(0xc0003bd7e0, 0xc00004bbf0, 0xc0003beae0, 0x1)
	C:/workdir/go/src/time/time_test.go:1423 +0x9b fp=0xc000281fc0 sp=0xc000281f68 pc=0x5c998b
runtime.goexit()
	C:/workdir/go/src/runtime/asm_amd64.s:1375 +0x1 fp=0xc000281fc8 sp=0xc000281fc0 pc=0x462a81
created by time_test.TestConcurrentTimerReset
	C:/workdir/go/src/time/time_test.go:1419 +0xea

goroutine 1 [chan receive]:
testing.(*T).Run(0xc0000def00, 0x639c97, 0x18, 0x646ce0, 0x48d801)
	C:/workdir/go/src/testing/testing.go:977 +0x37f
testing.runTests.func1(0xc0000de000)
	C:/workdir/go/src/testing/testing.go:1218 +0x7f
testing.tRunner(0xc0000de000, 0xc00009de10)
	C:/workdir/go/src/testing/testing.go:925 +0xc8
testing.runTests(0xc000050e00, 0x7d5200, 0x66, 0x66, 0x0)
	C:/workdir/go/src/testing/testing.go:1216 +0x2ae
testing.(*M).Run(0xc0000aa080, 0x0)
	C:/workdir/go/src/testing/testing.go:1133 +0x166
main.main()
	_testmain.go:348 +0x13c

goroutine 137 [semacquire]:
sync.runtime_Semacquire(0xc0003bd7e8)
	C:/workdir/go/src/runtime/sema.go:56 +0x49
sync.(*WaitGroup).Wait(0xc0003bd7e0)
	C:/workdir/go/src/sync/waitgroup.go:130 +0x6b
time_test.TestConcurrentTimerReset(0xc0000def00)
	C:/workdir/go/src/time/time_test.go:1427 +0x10c
testing.tRunner(0xc0000def00, 0x646ce0)
	C:/workdir/go/src/testing/testing.go:925 +0xc8
created by testing.(*T).Run
	C:/workdir/go/src/testing/testing.go:976 +0x358

goroutine 142 [runnable]:
time_test.TestConcurrentTimerReset.func2(0xc0003bd7e0, 0xc00004bbf0, 0xc0003beae0, 0x4)
	C:/workdir/go/src/time/time_test.go:1419
created by time_test.TestConcurrentTimerReset
	C:/workdir/go/src/time/time_test.go:1419 +0xea

goroutine 138 [runnable]:
testing.(*common).decorate(0xc0000def00, 0xc0003f2020, 0x17, 0x4, 0x0, 0xc000277e08)
	C:/workdir/go/src/testing/testing.go:462 +0x912
testing.(*common).logDepth(0xc0000def00, 0xc0003f2020, 0x17, 0x3)
	C:/workdir/go/src/testing/testing.go:685 +0x281
testing.(*common).log(...)
	C:/workdir/go/src/testing/testing.go:661
testing.(*common).Logf(0xc0000def00, 0x63a27f, 0x18, 0xc000277f28, 0x1, 0x1)
	C:/workdir/go/src/testing/testing.go:700 +0x85
time_test.TestConcurrentTimerReset.func1(0x0)
	C:/workdir/go/src/time/time_test.go:1409 +0x162
time_test.TestConcurrentTimerReset.func2(0xc0003bd7e0, 0xc00004bbf0, 0xc0003beae0, 0x0)
	C:/workdir/go/src/time/time_test.go:1425 +0xca
created by time_test.TestConcurrentTimerReset
	C:/workdir/go/src/time/time_test.go:1419 +0xea

goroutine 141 [runnable]:
time.resetTimer(0xc0003beae8, 0x3c449869e2e)
	C:/workdir/go/src/runtime/time.go:302 +0x4b
time.(*Timer).Reset(0xc0003beae0, 0x34630b8a4ce, 0x646701)
	C:/workdir/go/src/time/sleep.go:129 +0x84
time_test.TestConcurrentTimerReset.func2(0xc0003bd7e0, 0xc00004bbf0, 0xc0003beae0, 0x3)
	C:/workdir/go/src/time/time_test.go:1423 +0x9b
created by time_test.TestConcurrentTimerReset
	C:/workdir/go/src/time/time_test.go:1419 +0xea

goroutine 144 [runnable]:
time_test.TestConcurrentTimerReset.func2(0xc0003bd7e0, 0xc00004bbf0, 0xc0003beae0, 0x6)
	C:/workdir/go/src/time/time_test.go:1419
created by time_test.TestConcurrentTimerReset
	C:/workdir/go/src/time/time_test.go:1419 +0xea

goroutine 143 [runnable]:
time_test.TestConcurrentTimerReset.func2(0xc0003bd7e0, 0xc00004bbf0, 0xc0003beae0, 0x5)
	C:/workdir/go/src/time/time_test.go:1419
created by time_test.TestConcurrentTimerReset
	C:/workdir/go/src/time/time_test.go:1419 +0xea
FAIL	time	2.756s

It's not obvious to me whether this failure is related to #27707, but it seems like it could be related.

CC @ianlancetaylor @odeke-em @dvyukov @mknyszek

@bcmills bcmills added this to the Go1.14 milestone Oct 31, 2019
@gopherbot
Copy link

@gopherbot gopherbot commented Nov 1, 2019

Change https://golang.org/cl/204717 mentions this issue: runtime: use atomic.Cas to change timerRemoved to timerWaiting

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants
You can’t perform that action at this time.