-
Notifications
You must be signed in to change notification settings - Fork 18k
x/build/env: host-freebsd-amd64-13_0 (VM Image: freebsd-amd64-130-stable-20211230) #61095
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
Comments
Based on https://www.freebsd.org/releases/, FreeBSD 13.0 is EOL, and its most recent releases are 13.3, 14.0, and 14.1. CC @mengzhuo Is it right that https://ci.chromium.org/ui/p/golang/builders/luci.golang.ci/gotip-freebsd-riscv64 is testing the freebsd/riscv64 port with FreeBSD 13.1? CC @golang/freebsd Would it make sense to target one of those newer versions, instead of this FreeBSD 13.0 one? Also see discussion about FreeBSD versions in #54355. |
Yes, it's FreeBSD 13.1 but it can't upgrade to 13.3 by But I can do a full upgrade to 14.1 if you want. |
@mengzhuo I think an upgrade to 14.0 or 14.1 would be helpful. |
I'll make an attempt at this this week. |
Change https://go.dev/cl/616836 mentions this issue: |
Port to LUCI includes: - Install Python. - Install bootstrapswarm. - Use bootstrapswarm instead of buildlet. For golang/go#61095. Change-Id: Ie787f6d098186259398ad135b60758e1ce8b489c Reviewed-on: https://go-review.googlesource.com/c/build/+/616836 Auto-Submit: Michael Knyszek <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]> Reviewed-by: Dmitri Shuralyov <[email protected]> Reviewed-by: Dmitri Shuralyov <[email protected]>
As an update here, I got the machines up and running and they pass most of the tests. Unfortunately, we're seeing persistent failures of the form:
I'm not really sure where to start with this. @neild maybe you have some ideas? CC @golang/freebsd |
Also, |
Clearing my assignment as this is my last day on the rotation this week. AFAICT, the only steps left are:
|
Okay actually, I think this error is related to the image upgrade, not LUCI. I found this bug, which is tagged as related to FreeBSD 13.2. https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=273912 It appears that this is indeed new behavior and it's intentional? It looks like at least the first test failure is indeed trying to look up a host without an A record (https://cs.opensource.google/go/go/+/master:src/net/lookup_test.go;l=1426?q=TestLookupNoData&ss=go%2Fgo). I think this actually fully explains the issue, but I have no idea whether the fix is to go into the |
I think I actually see the fix; I think we need to look for |
Change https://go.dev/cl/618015 mentions this issue: |
Wow! That actually worked. Cool, all we need then is to fix
|
Does FreeBSD use clang by default? I think |
In addition to this cgo issue, I also see occasional infra failures due to bots dying. e.g., https://ci.chromium.org/ui/p/golang/builders/ci/gotip-freebsd-amd64/b8733453678465886913/infra. It's not clear to me why the bot is dying. |
The infra failures seem to be due to the LUCI infra deleting the instance while it is running tests. It should not be doing that. |
Welp, I'm back on rotation again. We think we know why the bots are being deleted, so I'll update the image with a fix for that. I'll see if maybe something else needs updating in the image generation script for clang. Thanks for the deep dive @prattmic! |
So, AFAICT, there's nothing special with clang in this FreeBSD image. Clang is installed by default, so there's no extra installation step, and there are no packages like |
Change https://go.dev/cl/632975 mentions this issue: |
Unfortunately, naively applying OpenBSD's workaround is not enough. |
Change https://go.dev/cl/622040 mentions this issue: |
Part of the contract of running swarming_bot is that we need to keep restarting it if it has a non-zero exit code. But if it has a zero exit code, we must NOT restart it. Currently the daemon just always keeps restarting it. Do this by writing the pid of the daemon supervisor and using that to kill the supervisor when we get a zero exit code from bootstrapswarm. bootstrapswarm will exit with a zero exit code only if swarming_bot does. For golang/go#61095. Change-Id: I92bdea3fa35fed0883cd9e996aa231e26cdb7155 Reviewed-on: https://go-review.googlesource.com/c/build/+/622040 Auto-Submit: Michael Knyszek <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]> Reviewed-by: Dmitri Shuralyov <[email protected]> Reviewed-by: Dmitri Shuralyov <[email protected]>
OK so I found a fix, but I'm not certain if it's the right one.
|
OK it appears that |
Yay, the CL above now works, and doesn't break on old versions of FreeBSD either. If we land that, I think we're done here. We can probably also enable FreeBSD in presubmit, the builder is pretty fast. |
On FreeBSD 14.1 we fail to link against C code with internal linking. The symptom is apparently undefined symbols, but explicitly pointing the linker at compiler-rt for -libgcc fixes the issue. This looks a lot like the workaround on OpenBSD, but the symptom is different. --print-libgcc-file-name produces libclang_rt.builtins-x86_64.a which appears to be an insufficient subset of libcompiler_rt.a. For #61095. Change-Id: Iff5affbc923d69c89d671a69d8f4ecaadac42177 Cq-Include-Trybots: luci.golang.try:gotip-freebsd-amd64 Reviewed-on: https://go-review.googlesource.com/c/go/+/632975 Auto-Submit: Michael Knyszek <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]> Run-TryBot: Michael Knyszek <[email protected]> TryBot-Result: Gopher Robot <[email protected]> Reviewed-by: Cherry Mui <[email protected]>
Change https://go.dev/cl/633198 mentions this issue: |
Change https://go.dev/cl/634042 mentions this issue: |
Change https://go.dev/cl/634043 mentions this issue: |
Change https://go.dev/cl/634079 mentions this issue: |
We're not planning to backport the fixes needed to make it work. For golang/go#61095. Change-Id: I6dfb039d0bec335e26332aef7ace17691609011d Reviewed-on: https://go-review.googlesource.com/c/build/+/634079 Reviewed-by: Dmitri Shuralyov <[email protected]> Reviewed-by: Dmitri Shuralyov <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]>
All remaining issues appear to be fixed. Fixes golang/go#61095. Change-Id: I3c2a6446cd5308df4d5d257bb7d0a3de5d0fb1ca Reviewed-on: https://go-review.googlesource.com/c/build/+/633198 Reviewed-by: Dmitri Shuralyov <[email protected]> Reviewed-by: Dmitri Shuralyov <[email protected]> Auto-Submit: Michael Knyszek <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]>
Closed by merging CL 633198 (commit golang/build@40adee2) to |
Change https://go.dev/cl/646515 mentions this issue: |
Change https://go.dev/cl/646136 mentions this issue: |
These builders have been migrated to LUCI. For golang/go#61095. For golang/go#67761. Change-Id: I677b1a4fabe300c048c38f34f3712c118922eb86 Reviewed-on: https://go-review.googlesource.com/c/build/+/646515 Reviewed-by: Michael Knyszek <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]> Reviewed-by: Dmitri Shuralyov <[email protected]> Auto-Submit: Dmitri Shuralyov <[email protected]>
Move the remaining freebsd-amd64 builder configuration from old infra, and then stop it there (CL 646515). For golang/go#61095. For golang/go#71556. Change-Id: I5b12e139458f7ee9ff97061d23d27fe47ee9937e Reviewed-on: https://go-review.googlesource.com/c/build/+/646136 Reviewed-by: Michael Knyszek <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]> Reviewed-by: Dmitri Shuralyov <[email protected]> Auto-Submit: Dmitri Shuralyov <[email protected]>
This issue tracks porting the freebsd-amd64-130 (FreeBSD 13.0 with GOARCH=amd64) GCE host image to LUCI.
The text was updated successfully, but these errors were encountered: