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

sync: bad mutex state on RISC-V #62100

Closed
mknyszek opened this issue Aug 17, 2023 · 2 comments
Closed

sync: bad mutex state on RISC-V #62100

mknyszek opened this issue Aug 17, 2023 · 2 comments
Labels
arch-riscv Issues solely affecting the riscv64 architecture. compiler/runtime Issues related to the Go compiler and/or runtime. help wanted 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 Aug 17, 2023

#!watchflakes
post <- log ~ `fatal error: sync:.*mutex` && builder == "linux-riscv64-unmatched"

2023-07-31 22:18 linux-riscv64-unmatched go@be0e0b06 cmd/go/internal/par.TestWork (log)
2023-08-01 13:51 linux-riscv64-unmatched go@91387436 cmd/go/internal/par.TestWork (log)
2023-08-02 15:24 linux-riscv64-unmatched go@0f1491de cmd/go/internal/par.TestWork (log)
2023-08-07 23:13 linux-riscv64-unmatched go@3393155a cmd/go/internal/par.TestWork (log)

CC @golang/riscv64

@gopherbot gopherbot added the compiler/runtime Issues related to the Go compiler and/or runtime. label Aug 17, 2023
@dmitshur dmitshur added NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. arch-riscv Issues solely affecting the riscv64 architecture. labels Aug 17, 2023
@dmitshur dmitshur added this to the Backlog milestone Aug 17, 2023
@gopherbot
Copy link

Found new dashboard test flakes for:

#!watchflakes
post <- log ~ `fatal error: sync:.*mutex` && builder == "linux-riscv64-unmatched"
2023-07-31 22:18 linux-riscv64-unmatched go@be0e0b06 cmd/go/internal/par.TestWork (log)
fatal error: sync: unlock of unlocked mutex

runtime.gopark(0x3f880aa180?, 0x1?, 0xac?, 0xa1?, 0x1e?)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/proc.go:398 +0x10c fp=0x3f8809fd50 sp=0x3f8809fd38 pc=0x4957c
runtime.goparkunlock(...)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/proc.go:404
runtime.semacquire1(0x3f880e2014, 0x0?, 0x3, 0x1, 0x94?)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/sema.go:160 +0x218 fp=0x3f8809fda0 sp=0x3f8809fd50 pc=0x59fd0
sync.runtime_SemacquireMutex(0x24ece0?, 0x94?, 0x3f880e2014?)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/sema.go:77 +0x44 fp=0x3f8809fdd0 sp=0x3f8809fda0 pc=0x75494
sync.(*Mutex).lockSlow(0x3f880e2010)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/sync/mutex.go:171 +0x180 fp=0x3f8809fe20 sp=0x3f8809fdd0 pc=0x7e860
sync.(*Mutex).Lock(...)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/sync/mutex.go:90
cmd/go/internal/par.(*Work[...]).Add(0x176d80, 0x128e)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work.go:36 +0x80 fp=0x3f8809fe80 sp=0x3f8809fe20 pc=0x1038a8
cmd/go/internal/par.TestWork.func1(0x128f)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work_test.go:22 +0x5c fp=0x3f8809feb0 sp=0x3f8809fe80 pc=0x102e84
cmd/go/internal/par.(*Work[...]).runner(0x102d2c)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work.go:102 +0x40 fp=0x3f8809fee0 sp=0x3f8809feb0 pc=0x103538
cmd/go/internal/par.(*Work[...]).Do(0x176d80, 0x64, 0x0)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work.go:70 +0x138 fp=0x3f8809ff10 sp=0x3f8809fee0 pc=0x1037f0
cmd/go/internal/par.TestWork(0x3f880831e0)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work_test.go:19 +0xc4 fp=0x3f8809ff78 sp=0x3f8809ff10 pc=0x102d84
testing.tRunner(0x3f880831e0, 0x151a50)
2023-08-01 13:51 linux-riscv64-unmatched go@91387436 cmd/go/internal/par.TestWork (log)
fatal error: sync: inconsistent mutex state

runtime.gopark(0x24ebc0?, 0x0?, 0x40?, 0xab?, 0x1039e8?)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/proc.go:398 +0x10c fp=0x3f7010dde0 sp=0x3f7010ddc8 pc=0x4957c
runtime.goparkunlock(...)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/proc.go:404
runtime.semacquire1(0x3f70070014, 0x0?, 0x3, 0x1, 0x76?)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/sema.go:160 +0x218 fp=0x3f7010de30 sp=0x3f7010dde0 pc=0x59fd0
sync.runtime_SemacquireMutex(0x24ebc0?, 0x10?, 0x3f70070010?)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/sema.go:77 +0x44 fp=0x3f7010de60 sp=0x3f7010de30 pc=0x75494
sync.(*Mutex).lockSlow(0x3f70070010)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/sync/mutex.go:171 +0x180 fp=0x3f7010deb0 sp=0x3f7010de60 pc=0x7e860
sync.(*Mutex).Lock(...)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/sync/mutex.go:90
cmd/go/internal/par.(*Work[...]).runner(0x102d2c)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work.go:79 +0x88 fp=0x3f7010dee0 sp=0x3f7010deb0 pc=0x103580
cmd/go/internal/par.(*Work[...]).Do(0x176d80, 0x64, 0x0)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work.go:70 +0x138 fp=0x3f7010df10 sp=0x3f7010dee0 pc=0x1037f0
cmd/go/internal/par.TestWork(0x3f70001520)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work_test.go:19 +0xc4 fp=0x3f7010df78 sp=0x3f7010df10 pc=0x102d84
testing.tRunner(0x3f70001520, 0x151a50)
2023-08-02 15:24 linux-riscv64-unmatched go@0f1491de cmd/go/internal/par.TestWork (log)
fatal error: sync: unlock of unlocked mutex
fatal error: sync: inconsistent mutex state

runtime.gopark(0x3f88181a40?, 0x0?, 0xac?, 0xa1?, 0x3f0000001e?)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/proc.go:398 +0x10c fp=0x3f88032550 sp=0x3f88032538 pc=0x4957c
runtime.goparkunlock(...)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/proc.go:404
runtime.semacquire1(0x3f88162014, 0x0?, 0x3, 0x1, 0x78?)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/sema.go:160 +0x218 fp=0x3f880325a0 sp=0x3f88032550 pc=0x59fd0
sync.runtime_SemacquireMutex(0x25f000?, 0x84?, 0x103a6c?)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/sema.go:77 +0x44 fp=0x3f880325d0 sp=0x3f880325a0 pc=0x75494
sync.(*Mutex).lockSlow(0x3f88162010)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/sync/mutex.go:171 +0x180 fp=0x3f88032620 sp=0x3f880325d0 pc=0x7e860
sync.(*Mutex).Lock(...)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/sync/mutex.go:90
cmd/go/internal/par.(*Work[...]).Add(0x176e00, 0x3a4)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work.go:36 +0x80 fp=0x3f88032680 sp=0x3f88032620 pc=0x1039d8
cmd/go/internal/par.TestWork.func1(0x3a5)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work_test.go:22 +0x5c fp=0x3f880326b0 sp=0x3f88032680 pc=0x102fb4
cmd/go/internal/par.(*Work[...]).runner(0x102e5c)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work.go:102 +0x40 fp=0x3f880326e0 sp=0x3f880326b0 pc=0x103668
cmd/go/internal/par.(*Work[...]).Do(0x176e00, 0x64, 0x0)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work.go:70 +0x138 fp=0x3f88032710 sp=0x3f880326e0 pc=0x103920
cmd/go/internal/par.TestWork(0x3f88103860)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work_test.go:19 +0xc4 fp=0x3f88032778 sp=0x3f88032710 pc=0x102eb4
testing.tRunner(0x3f88103860, 0x151a50)
2023-08-07 23:13 linux-riscv64-unmatched go@3393155a cmd/go/internal/par.TestWork (log)
fatal error: sync: unlock of unlocked mutex
fatal error: sync: inconsistent mutex state

runtime.gopark(0x3fa806c180?, 0x5a42c?, 0x3?, 0x0?, 0x59ff4?)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/proc.go:398 +0x10c fp=0x3fa8061da0 sp=0x3fa8061d88 pc=0x497fc
runtime.goparkunlock(...)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/proc.go:404
runtime.semacquire1(0x3fa81a0014, 0x0?, 0x3, 0x1, 0x34?)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/sema.go:160 +0x218 fp=0x3fa8061df0 sp=0x3fa8061da0 pc=0x5a250
sync.runtime_SemacquireMutex(0x7ed90?, 0x0?, 0x7d480?)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/runtime/sema.go:77 +0x44 fp=0x3fa8061e20 sp=0x3fa8061df0 pc=0x75754
sync.(*Mutex).lockSlow(0x3fa81a0010)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/sync/mutex.go:171 +0x180 fp=0x3fa8061e70 sp=0x3fa8061e20 pc=0x7eb08
sync.(*Mutex).Lock(0x3fa81a0048?)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/sync/mutex.go:90 +0x58 fp=0x3fa8061e80 sp=0x3fa8061e70 pc=0x7e978
sync.(*Cond).Wait(0x3fa81a0038)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/sync/cond.go:71 +0xc4 fp=0x3fa8061eb0 sp=0x3fa8061e80 pc=0x7d494
cmd/go/internal/par.(*Work[...]).runner(0x103224)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work.go:88 +0x130 fp=0x3fa8061ee0 sp=0x3fa8061eb0 pc=0x103b20
cmd/go/internal/par.(*Work[...]).Do(0x177200, 0x64, 0x0)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work.go:70 +0x138 fp=0x3fa8061f10 sp=0x3fa8061ee0 pc=0x103ce8
cmd/go/internal/par.TestWork(0x3fa818e000)
	/tmp/workdir-host-linux-riscv64-unmatched/go/src/cmd/go/internal/par/work_test.go:19 +0xc4 fp=0x3fa8061f78 sp=0x3fa8061f10 pc=0x10327c
testing.tRunner(0x3fa818e000, 0x151b08)

watchflakes

@bcmills
Copy link
Contributor

bcmills commented Aug 23, 2023

Duplicate of #62185

@bcmills bcmills marked this as a duplicate of #62185 Aug 23, 2023
@bcmills bcmills closed this as not planned Won't fix, can't repro, duplicate, stale Aug 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arch-riscv Issues solely affecting the riscv64 architecture. compiler/runtime Issues related to the Go compiler and/or runtime. help wanted 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

4 participants