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

all: failures during bootstrapping on linux-riscv64-unmatched #62104

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

all: failures during bootstrapping on linux-riscv64-unmatched #62104

mknyszek opened this issue Aug 17, 2023 · 11 comments
Labels
arch-riscv Issues solely affecting the riscv64 architecture. Builders x/build issues (builders, bots, dashboards) compiler/runtime Issues related to the Go compiler and/or runtime. FrozenDueToAge 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.
Milestone

Comments

@mknyszek
Copy link
Contributor

mknyszek commented Aug 17, 2023

#!watchflakes
post <- (pkg ~ `^bootstrap` || log ~ `^bootstrap/`) && builder == "linux-riscv64-unmatched" && test == "" && date < "2023-08-25"

2023-08-08 21:48 linux-riscv64-unmatched go@6e434079 bootstrap/cmd/link/internal/ld [build] (log)
2023-08-09 15:15 linux-riscv64-unmatched go@cd589c8a bootstrap/debug/dwarf [build] (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 this to the Backlog milestone 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
@gopherbot
Copy link
Contributor

Found new dashboard test flakes for:

#!watchflakes
post <- log ~ `checkdead: runnable g` && builder == "linux-riscv64-unmatched"
2023-08-08 21:48 linux-riscv64-unmatched go@6e434079 bootstrap/cmd/link/internal/ld [build] (log)
runtime: checkdead: find g 768 in status 1
fatal error: checkdead: runnable g

runtime stack:
runtime.throw({0x95256c?, 0x50300?})
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/panic.go:1047 +0x44 fp=0x3fac051da8 sp=0x3fac051d80 pc=0x478cc
runtime.checkdead.func1(0x3fa6746d00)
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:5235 +0x114 fp=0x3fac051dd8 sp=0x3fac051da8 pc=0x55874
runtime.forEachG(0x3fac051e38)
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:591 +0x70 fp=0x3fac051e00 sp=0x3fac051dd8 pc=0x4aed8
runtime.checkdead()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:5222 +0x114 fp=0x3fac051e48 sp=0x3fac051e00 pc=0x55524
runtime.mput(0x4fa6c?)
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:5715 +0x58 fp=0x3fac051e50 sp=0x3fac051e48 pc=0x56ad8
runtime.stopm()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:2333 +0x60 fp=0x3fac051e78 sp=0x3fac051e50 pc=0x4e4f0
runtime.findRunnable()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:3025 +0xae4 fp=0x3fac051f70 sp=0x3fac051e78 pc=0x4ff04
runtime.schedule()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:3378 +0xa4 fp=0x3fac051fa0 sp=0x3fac051f70 pc=0x50f7c
runtime.park_m(0x3fac3ea4e0?)
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:3529 +0x11c fp=0x3fac051fc8 sp=0x3fac051fa0 pc=0x514c4
runtime.mcall()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/asm_riscv64.s:291 +0x40 fp=0x3fac051fd8 sp=0x3fac051fc8 pc=0x78bd0
2023-08-09 15:15 linux-riscv64-unmatched go@cd589c8a bootstrap/debug/dwarf [build] (log)
runtime: checkdead: find g 193 in status 1
fatal error: checkdead: runnable g

runtime stack:
runtime.throw({0x95256c?, 0x50300?})
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/panic.go:1047 +0x44 fp=0x3f98051da8 sp=0x3f98051d80 pc=0x478cc
runtime.checkdead.func1(0x3f9834d860)
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:5235 +0x114 fp=0x3f98051dd8 sp=0x3f98051da8 pc=0x55874
runtime.forEachG(0x3f98051e38)
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:591 +0x70 fp=0x3f98051e00 sp=0x3f98051dd8 pc=0x4aed8
runtime.checkdead()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:5222 +0x114 fp=0x3f98051e48 sp=0x3f98051e00 pc=0x55524
runtime.mput(0x4fa6c?)
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:5715 +0x58 fp=0x3f98051e50 sp=0x3f98051e48 pc=0x56ad8
runtime.stopm()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:2333 +0x60 fp=0x3f98051e78 sp=0x3f98051e50 pc=0x4e4f0
runtime.findRunnable()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:3025 +0xae4 fp=0x3f98051f70 sp=0x3f98051e78 pc=0x4ff04
runtime.schedule()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:3378 +0xa4 fp=0x3f98051fa0 sp=0x3f98051f70 pc=0x50f7c
runtime.park_m(0x3f983a8000?)
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:3529 +0x11c fp=0x3f98051fc8 sp=0x3f98051fa0 pc=0x514c4
runtime.mcall()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/asm_riscv64.s:291 +0x40 fp=0x3f98051fd8 sp=0x3f98051fc8 pc=0x78bd0

watchflakes

@gopherbot
Copy link
Contributor

Found new dashboard test flakes for:

#!watchflakes
post <- log ~ `checkdead: runnable g` && builder == "linux-riscv64-unmatched"
2023-08-17 19:37 linux-riscv64-unmatched go@c8adb300 regexp [build] (log)
runtime: checkdead: find g 127 in status 1
fatal error: checkdead: runnable g

runtime stack:
runtime.throw({0x7124ee?, 0x52000?})
	../../go/src/runtime/panic.go:1047 +0x44 fp=0x3fa8051d90 sp=0x3fa8051d68 pc=0x4947c
runtime.checkdead.func1(0x3fa9302000)
	../../go/src/runtime/proc.go:5235 +0x114 fp=0x3fa8051dc0 sp=0x3fa8051d90 pc=0x5761c
runtime.forEachG(0x3fa8051e20)
	../../go/src/runtime/proc.go:591 +0x70 fp=0x3fa8051de8 sp=0x3fa8051dc0 pc=0x4cb10
runtime.checkdead()
	../../go/src/runtime/proc.go:5222 +0x114 fp=0x3fa8051e30 sp=0x3fa8051de8 pc=0x572cc
runtime.mput(0x516dc?)
	../../go/src/runtime/proc.go:5715 +0x58 fp=0x3fa8051e38 sp=0x3fa8051e30 pc=0x58a18
runtime.stopm()
	../../go/src/runtime/proc.go:2333 +0x60 fp=0x3fa8051e60 sp=0x3fa8051e38 pc=0x50148
runtime.findRunnable()
	../../go/src/runtime/proc.go:3025 +0xae4 fp=0x3fa8051f58 sp=0x3fa8051e60 pc=0x51b74
runtime.schedule()
	../../go/src/runtime/proc.go:3378 +0xa4 fp=0x3fa8051f88 sp=0x3fa8051f58 pc=0x52d2c
runtime.goexit0(0x3fa944e340)
	../../go/src/runtime/proc.go:3705 +0x28c fp=0x3fa8051fc8 sp=0x3fa8051f88 pc=0x53c2c
runtime.mcall()
	../../go/src/runtime/asm_riscv64.s:291 +0x40 fp=0x3fa8051fd8 sp=0x3fa8051fc8 pc=0x78eb0

watchflakes

@mengzhuo
Copy link
Contributor

mengzhuo commented Aug 18, 2023

@bcmills Can we upgrade GOROOT_BOOTSTRAP to Go 1.20.7 and buildlet to Go 1.21?
This fixed a LD/SC asm code generation issue(#61295)I think this might related.

@gopherbot
Copy link
Contributor

Found new dashboard test flakes for:

#!watchflakes
post <- log ~ `checkdead: runnable g` && builder == "linux-riscv64-unmatched"
2023-08-17 23:32 linux-riscv64-unmatched go@60dd8311 bootstrap/cmd/compile/internal/types2 [build] (log)
runtime: checkdead: find g 790 in status 1
fatal error: checkdead: runnable g

runtime stack:
runtime.throw({0x95256c?, 0x50300?})
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/panic.go:1047 +0x44 fp=0x3fb408dd90 sp=0x3fb408dd68 pc=0x478cc
runtime.checkdead.func1(0x3fb04e8d00)
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:5235 +0x114 fp=0x3fb408ddc0 sp=0x3fb408dd90 pc=0x55874
runtime.forEachG(0x3fb408de20)
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:591 +0x70 fp=0x3fb408dde8 sp=0x3fb408ddc0 pc=0x4aed8
runtime.checkdead()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:5222 +0x114 fp=0x3fb408de30 sp=0x3fb408dde8 pc=0x55524
runtime.mput(0x4fa6c?)
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:5715 +0x58 fp=0x3fb408de38 sp=0x3fb408de30 pc=0x56ad8
runtime.stopm()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:2333 +0x60 fp=0x3fb408de60 sp=0x3fb408de38 pc=0x4e4f0
runtime.findRunnable()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:3025 +0xae4 fp=0x3fb408df58 sp=0x3fb408de60 pc=0x4ff04
runtime.schedule()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:3378 +0xa4 fp=0x3fb408df88 sp=0x3fb408df58 pc=0x50f7c
runtime.goexit0(0x3fb246b040)
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/proc.go:3705 +0x288 fp=0x3fb408dfc8 sp=0x3fb408df88 pc=0x51e78
runtime.mcall()
	/tmp/genbootstrap-3479644045/go-linux-riscv64-bootstrap/src/runtime/asm_riscv64.s:291 +0x40 fp=0x3fb408dfd8 sp=0x3fb408dfc8 pc=0x78bd0

watchflakes

@bcmills
Copy link
Contributor

bcmills commented Aug 18, 2023

@mengzhuo, I'm not sure exactly what the process for that is. 😅

It looks like @cagedmantis will be on the @golang/release interrupts rotation on Monday — perhaps he can help with that?

@dmitshur
Copy link
Contributor

I might be able to help a bit sooner too. :)

Sent CL 520900.

FWIW, if you think it has a chance to help more, it's also fine to use go1.21.0 as the bootstrap for this builder. As cmd/dist/README says, "Releases ≥ Go 1.x are very likely to work as well."

@gopherbot
Copy link
Contributor

Change https://go.dev/cl/520900 mentions this issue: dashboard: update linux-riscv64 builder's bootstrap to Go 1.20.7

@4a6f656c
Copy link
Contributor

@bcmills Can we upgrade GOROOT_BOOTSTRAP to Go 1.20.7 and buildlet to Go 1.21? This fixed a LD/SC asm code generation issue(#61295)I think this might related.

@mengzhuo is this still a SiFive HiFive Unmatched machine?

@mengzhuo
Copy link
Contributor

@bcmills Can we upgrade GOROOT_BOOTSTRAP to Go 1.20.7 and buildlet to Go 1.21? This fixed a LD/SC asm code generation issue(#61295)I think this might related.

@mengzhuo is this still a SiFive HiFive Unmatched machine?

There is one Unmatched(unmatched025.farm.rvlab.org), I want to improve the test time of trybot by adding more SBC (visionfive2 or Licheepi4a) in the farm. Unfortunately I can't get more new Unmatched since it's discontinued.

I've looked all failed logs, all failed on Licheepi4a, I had offlined this SBC.

My initial guess is Licheepi4a using different architecture (Thead Xuantie 9XX) instead of Visionfive2/Unmatched (Sifive u74). They might be different in the OoO and atomic.

@bcmills bcmills changed the title runtime: checkdead runnable g on RISC-V all: failures during bootstrapping on linux-riscv64-unmatched Aug 21, 2023
@bcmills bcmills added the Builders x/build issues (builders, bots, dashboards) label Aug 21, 2023
@bcmills bcmills changed the title all: failures during bootstrapping on linux-riscv64-unmatched all: failures during bootstrapping on linux-riscv64-unmatched Aug 21, 2023
gopherbot pushed a commit to golang/build that referenced this issue Aug 21, 2023
This is easy to do, and might either resolve the issue or eliminate
the need to consider the Go 1.20.6 bootstrap as contributing to the
problem.

For golang/go#62104.

Change-Id: I2c22c47bb6ef1d84036763492313d1f51fb63fb2
Reviewed-on: https://go-review.googlesource.com/c/build/+/520900
Reviewed-by: Bryan Mills <[email protected]>
Run-TryBot: Dmitri Shuralyov <[email protected]>
Auto-Submit: Dmitri Shuralyov <[email protected]>
Reviewed-by: Ian Lance Taylor <[email protected]>
Reviewed-by: Dmitri Shuralyov <[email protected]>
TryBot-Result: Gopher Robot <[email protected]>
Reviewed-by: Carlos Amedee <[email protected]>
@cagedmantis
Copy link
Contributor

The coordinator has been redeployed. The deployed version includes change go.dev/cl/520900.

@mknyszek mknyszek added the WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided. label Aug 23, 2023
@mengzhuo
Copy link
Contributor

Updates:
I've contacted tech support of Licheepi, they confirm it's a kernel bug on mutex and will fix it soon.

@github-project-automation github-project-automation bot moved this from Todo to Done in Go Compiler / Runtime Aug 25, 2023
@golang golang locked and limited conversation to collaborators Aug 24, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
arch-riscv Issues solely affecting the riscv64 architecture. Builders x/build issues (builders, bots, dashboards) compiler/runtime Issues related to the Go compiler and/or runtime. FrozenDueToAge 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.
Projects
Archived in project
Development

No branches or pull requests

7 participants