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

x/build: fix, stabilize netbsd/386 port #31726

Closed
4a6f656c opened this issue Apr 28, 2019 · 17 comments
Closed

x/build: fix, stabilize netbsd/386 port #31726

4a6f656c opened this issue Apr 28, 2019 · 17 comments
Labels
Builders x/build issues (builders, bots, dashboards) FrozenDueToAge help wanted NeedsFix The path to resolution is known, but the work has not been done. OS-NetBSD
Milestone

Comments

@4a6f656c
Copy link
Contributor

There has not seemingly been a netbsd/386 builder for a number of years - given that a builder is a requirement for a port, is it time to remove netbsd/386?

https://github.com/golang/go/wiki/PortingPolicy

@bradfitz
Copy link
Contributor

We have plenty of x86 compute resources to run a netbsd-386 builder and we used to run one.

The builder's not the issue.

The issue was that the builder was super flaky, IIRC. (There are probably old bugs about turning it off and its flakes)

I'd rather see some attention paid to fixing it up.

@krytarowski
Copy link
Contributor

netbsd/386 builder for a number of years like.. 1 year?

@krytarowski
Copy link
Contributor

golang for i386 has some users and it works good enough, but some corner cases are flaky.

@bradfitz
Copy link
Contributor

I just tried to run the builder. It hangs somewhere in the runtime tests ("go test -short runtime").

@krytarowski, I'm happy to re-enable the builder if you can even get it to 50% reliably passing, as long as it doesn't hang.

@bradfitz
Copy link
Contributor

Previously: #25206 in which @bsiegert said it was passing. Maybe not on GCE?

@bradfitz bradfitz changed the title all: remove netbsd/386 port? build: fix, stabilize netbsd/386 port Apr 30, 2019
@bradfitz bradfitz added help wanted NeedsFix The path to resolution is known, but the work has not been done. labels Apr 30, 2019
@gopherbot
Copy link

Change https://golang.org/cl/174637 mentions this issue: dashboard: add darwin-amd64-nocgo config, remove nacl-386 trybot

gopherbot pushed a commit to golang/build that referenced this issue Apr 30, 2019
Also remove dead nacl-arm. It hasn't run in ages.

And update netbsd comment about why 386 doesn't run. And correct its
VM image name.

Updates golang/go#31705
Updates golang/go#31726

Change-Id: I9de4605f34a052d0a84684fca098388d75602a82
Reviewed-on: https://go-review.googlesource.com/c/build/+/174637
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
@krytarowski
Copy link
Contributor

I'm still busy with !golang so cannot make any promises myself.

@bsiegert
Copy link
Contributor

bsiegert commented May 3, 2019

And it still passes, I tried in VirtualBox yesterday.

Given how close we are to branching NetBSD 9, maybe running the 386 builder on -current would make sense?

@bradfitz
Copy link
Contributor

bradfitz commented May 3, 2019

And it still passes, I tried in VirtualBox yesterday.

Did you test 8 or current?

8 on GCE doesn't work. I tried 3 days ago (see above).

@krytarowski
Copy link
Contributor

Using HEAD / -9 is a good idea. There were many improvements.

@dmitshur dmitshur changed the title build: fix, stabilize netbsd/386 port x/build: fix, stabilize netbsd/386 port Apr 1, 2020
@gopherbot gopherbot added this to the Unreleased milestone Apr 1, 2020
@gopherbot gopherbot added the Builders x/build issues (builders, bots, dashboards) label Apr 1, 2020
@gopherbot
Copy link

Change https://golang.org/cl/226977 mentions this issue: dashboard, env/netbsd-{amd64,386}: add NetBSD 9.0 builders

gopherbot pushed a commit to golang/build that referenced this issue Apr 7, 2020
Update NetBSD amd64 and 386 builders to the latest NetBSD 9.0 release,
using the latest versions of anita (2.3) and pkgsrc packages (2019Q4).

Also increase the image disk size from 4 GB to 16 GB. The motivation
is to help tests that require more disk space and large dependencies.
Additional adjustments to the image building script will need to be
made to make use of increased disk space for the /tmp volume, as it
is currently being mounted in RAM with size equal to 25% of memory.

Remove the manual invocation of the mozilla-rootcerts install command.
It no longer works as is in NetBSD 9.0. The mozilla-rootcerts-openssl
package is added instead, which successfully performs that same task.
Hopefully this will be a more robust approach for the future.

Continue to use an explicit URL for the NetBSD release download, and
remove unused find_latest_release.

The plan is to roll out these builders first (without trybots), gain
more confidence, enable trybots, and then remove NetBSD 8.0 builders.

For golang/go#37244.
For golang/go#30839.
For golang/go#31858.
For golang/go#31726.
For golang/go#38283.

Change-Id: Id41278eaebe64cfbcf7b1ab9bfd64e550ee0bbf1
Reviewed-on: https://go-review.googlesource.com/c/build/+/226977
Reviewed-by: Benny Siegert <bsiegert@gmail.com>
Reviewed-by: Alexander Rakoczy <alex@golang.org>
@gopherbot
Copy link

Change https://golang.org/cl/227538 mentions this issue: dashboard, env/netbsd-{amd64,386}: mount /tmp on disk instead of RAM

gopherbot pushed a commit to golang/build that referenced this issue Apr 8, 2020
The /tmp partition was being mounted as tmpfs -s=ram%25 by default.
On the n1-highcpu-4 machine type with 3.6 GB RAM, this resulted in
there being less than 1 GB of available disk space, which is not
sufficient to build Go and run its tests.

CL 226977 has increased the image disk size from 4 GB to 16 GB, so
using the disk for /tmp resolves issues with insufficient disk space.

I also considered using an alternative machine type like n1-standard-4
with 15 GB RAM instead, but didn't pursue that option for now because
it was not clear if it could be made to work for the 32-bit builder.

Remove the replacement of wd0 with sd0 in /etc/fstab. It is no longer
required because the NetBSD 9.0 installer defaults to installing on GPT
rather than MBR as was done in earlier versions.

For golang/go#37244.
For golang/go#30839.
For golang/go#31726.

Change-Id: Icbd0f909ab7768d775c96a6b606b5279a600f1bd
Reviewed-on: https://go-review.googlesource.com/c/build/+/227538
Reviewed-by: Benny Siegert <bsiegert@gmail.com>
Run-TryBot: Benny Siegert <bsiegert@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
@gopherbot
Copy link

Change https://golang.org/cl/227545 mentions this issue: dashboard: unset known issue for NetBSD 9.0 builders, use for trybots

@dmitshur dmitshur self-assigned this Apr 8, 2020
@dmitshur
Copy link
Contributor

dmitshur commented Apr 8, 2020

There are NetBSD 9.0 builders being added as part of issue #37244. So far, the netbsd-386-9_0 builder is passing. If nothing unexpected comes up, it should resolve this issue.

gopherbot pushed a commit to golang/build that referenced this issue Apr 8, 2020
The NetBSD 9.0 builders are operational as of CL 227538. They've been
running on a few commits in all repositories without issues.

The netbsd/386 builder is passing, no longer hanging in the runtime
tests as the NetBSD 8.0 version did, so keep it enabled.

If anything unexpected comes up, we should investigate.

For golang/go#37244.
For golang/go#31726.

Change-Id: Ie3167fa3eabb7f707487561ca2cd4505572df741
Reviewed-on: https://go-review.googlesource.com/c/build/+/227545
Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Andrew Bonventre <andybons@golang.org>
@dmitshur
Copy link
Contributor

dmitshur commented Apr 9, 2020

The netbsd-386-9_0 builder is passing tests on master, release-branch.go1.14, and release-branch.go1.13 branches of the main Go repository and all golang.org/x repositories.

Closing as resolved. This issue can be re-opened, or another more specific one can be created if something comes up.

@dmitshur dmitshur closed this as completed Apr 9, 2020
@gopherbot
Copy link

Change https://golang.org/cl/227738 mentions this issue: dashboard: remove netbsd-{amd64,386}-8_0 builders

@gopherbot
Copy link

Change https://golang.org/cl/227552 mentions this issue: go/packages: replace darwin with netbsd in TestSizes

gopherbot pushed a commit to golang/tools that referenced this issue Apr 9, 2020
The darwin/386 port has been removed per golang.org/issue/37610.
TestSizes needs an operating system that has both amd64 and 386 ports,
so darwin no longer qualifies. NetBSD has had its 386 port restored
recently in golang/go#31726, so it can be used instead.

Fixes golang/go#38319.
For golang/go#37610.

Change-Id: I37ce6d86ca3ddad43e9294e0de66f36091cba54a
Reviewed-on: https://go-review.googlesource.com/c/tools/+/227552
Reviewed-by: Benny Siegert <bsiegert@gmail.com>
gopherbot pushed a commit to golang/build that referenced this issue Apr 9, 2020
They've been superseded by the netbsd-{amd64,386}-9_0 builders.

Fixes golang/go#37244.
For golang/go#31726.

Change-Id: I17001d250b01d885ecd141b7bc07fce3de73e9a1
Reviewed-on: https://go-review.googlesource.com/c/build/+/227738
Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Benny Siegert <bsiegert@gmail.com>
@golang golang locked and limited conversation to collaborators Apr 9, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Builders x/build issues (builders, bots, dashboards) FrozenDueToAge help wanted NeedsFix The path to resolution is known, but the work has not been done. OS-NetBSD
Projects
None yet
Development

No branches or pull requests

6 participants