-
Notifications
You must be signed in to change notification settings - Fork 18k
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
runtime: go gets stuck when running in a FreeBSD jail #15044
Comments
Does every Go program fail in this was, or just the go tool itself? For example, you should be able to use the go tool outside of a jail to build a simple hello, world program. Does that program fail when run in a jail? What kind of processor are you running on? I actually don't see how that ktrace output is possible. The Go runtime only ever passes |
Is the userland in your jail in sync with your kernel? |
The architecture is amd64; the CPU is an Intel Core i5 750. I tried with a simple hello world program.
Finally I tried a hello world program using the package main
// #include <stdio.h>
//
// static void helloWorld() {
// printf("hello world\n");
// }
import "C"
func main() {
C.helloWorld()
} Building it out of the jail, then running it in the jail results in it getting stuck.
|
The Go runtime itself does not use C. However, many Go programs do use C. Go makes system calls directly, including to |
There is afaik nothing in jails that prevent using threads in any way. I already ran multithreaded applications in jails without any problem. However a quick Google search shows that there are various people having this kind of problems with applications using pthreads. I'm not sure how to fix this problem. |
Thanks. I'm going to close this issue because I don't think there is anything we can do on the Go side to fix it. Please reopen if there is something we can change in Go to make it work. |
Go version
1.6 (official freebsd pkg 1.6,1)
System
FreeBSD 10.2 (10.2-RELEASE-p13).
Commands executed in a jail.
Problem
Running any kind of go command (even something as simple as
go --help
) in a jail gets stuck and has to be killed with SIGKILL. There is no such problem when runninggo
outside of a jail.Trace
Running
ktrace go --help
:Full trace: go-help-ktrace.txt
I have the exact same problem when executing in a jail a binary built with
go build
outside a jail.This is the first time we are trying to run our Go software on FreeBSD, so I have no idea whether it is a FreeBSD problem or a Go problem. We did not have any problem when our software was in C, and have been using FreeBSD jails for some time now.
The text was updated successfully, but these errors were encountered: