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

cmd/compile: crash on freebsd/386 #23763

Closed
yurivict opened this issue Feb 9, 2018 · 11 comments

Comments

Projects
None yet
5 participants
@yurivict
Copy link

commented Feb 9, 2018

No error message:

/usr/local/go/pkg/tool/freebsd_386/compile -o $WORK/github.com/hashicorp/nomad/nomad/deploymentwatcher.a -trimpath $WORK -goversion go1.9.3 -p github.com/hashicorp/nomad/nomad/deploymentwatcher -complete -buildid d3001a508b685a6e0bc1f2ef258eec506bf37805 -importmap github.com/hashicorp/go-memdb=github.com/hashicorp/nomad/vendor/github.com/hashicorp/go-memdb -importmap golang.org/x/time/rate=github.com/hashicorp/nomad/vendor/golang.org/x/time/rate -D _/wrkdirs/usr/ports/sysutils/nomad/work/nomad-0.7.1/src/github.com/hashicorp/nomad/nomad/deploymentwatcher -I $WORK -I /wrkdirs/usr/ports/sysutils/nomad/work/nomad-0.7.1/pkg/freebsd_386 -pack ./batcher.go ./deployment_watcher.go ./deployments_watcher.go
*** Error code 2

The easiest way to reproduce:

  • Have FreeBSD i386 system
  • cd /usr/ports/sysutils/nomad
  • Comment out ONLY_FOR_ARCHS= amd64
  • make
@bradfitz

This comment has been minimized.

Copy link
Member

commented Feb 9, 2018

You deleted the bug template so I have to ask some basic questions, like: which version of Go?

Which version of nomad? (which version is your ports at)

Which version of FreeBSD?

@bradfitz bradfitz changed the title Compiler crashes on the 'nomad' project on i386 architecture cmd/compile: crash on freebsd/386 Feb 9, 2018

@yurivict

This comment has been minimized.

Copy link
Author

commented Feb 9, 2018

Sorry:

  • FreeBSD 10.3-RELEASE-p26 i386 (I suspect the same on other i386 architectures)
  • go-1.9.3,1
  • nomad-0.7.1
@davecheney

This comment has been minimized.

Copy link
Contributor

commented Feb 9, 2018

@yurivict

This comment has been minimized.

Copy link
Author

commented Feb 9, 2018

Does nomad compile successfully outside the ports system?

I can't try this easily, I run port builds in a i386 virtual machine.

@bradfitz

This comment has been minimized.

Copy link
Member

commented Feb 9, 2018

How notable is i386 in this bug report? Does it pass on amd64 but only fail on i386?

@yurivict

This comment has been minimized.

Copy link
Author

commented Feb 9, 2018

Yes, amd64 passes and only i386 fails.

@bradfitz

This comment has been minimized.

Copy link
Member

commented Feb 9, 2018

Yes, amd64 passes and only i386 fails.

If you can test it easily, what about 32-bit processes on 64-bit kernel?

That is, set GOARCH=386 on an amd64 kernel and try to build it?

@yurivict

This comment has been minimized.

Copy link
Author

commented Feb 9, 2018

That is, set GOARCH=386 on an amd64 kernel and try to build it?

This crashes too.

@cherrymui

This comment has been minimized.

Copy link
Contributor

commented Feb 9, 2018

I just tried GOARCH=386 GOOS=freebsd go get -v github.com/hashicorp/nomad/nomad, and it failed because github.com/hashicorp/nomad/vendor/github.com/mitchellh/go-ps doesn't build.

# github.com/hashicorp/nomad/vendor/github.com/mitchellh/go-ps
pp/src/github.com/hashicorp/nomad/vendor/github.com/mitchellh/go-ps/process.go:31:9: undefined: processes
pp/src/github.com/hashicorp/nomad/vendor/github.com/mitchellh/go-ps/process.go:39:9: undefined: findProcess

I think this is because it doesn't support freebsd/386: https://github.com/hashicorp/nomad/blob/master/vendor/github.com/mitchellh/go-ps/process_freebsd.go#L1, it is amd64 only.

I think the original error, /usr/local/go/pkg/tool/freebsd_386/compile -o $WORK/github.com/hashicorp/nomad/nomad/deploymentwatcher.a ..., is just happened to be the last action it did before failing.

@yurivict

This comment has been minimized.

Copy link
Author

commented Feb 9, 2018

These messages:

vendor/github.com/mitchellh/go-ps/process.go:31:9: undefined: processes
vendor/github.com/mitchellh/go-ps/process.go:39:9: undefined: findProcess

are missing the usual "error:" label so that they can't be easily detected.

@yurivict

This comment has been minimized.

Copy link
Author

commented Feb 9, 2018

@yurivict yurivict closed this Feb 9, 2018

@golang golang locked and limited conversation to collaborators Feb 9, 2019

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
You can’t perform that action at this time.