master
xSmurf 10 years ago
parent 2ef6fcc8be
commit 380757451c

@ -1,13 +1,6 @@
// +build linux,!gccgo
package mount
/*
As per the setns documentation, it is impossible to enter a
mount namespace from a multithreaded process.
One MUST insure that opening the namespace happens when the process
has only one thread. This is impossible from golang, as such we call
this C function as a constructor to ensure that it is executed
before the go scheduler launches other threads.
*/
// extern int enter_mount_namespace(void);
/*
#include <stdlib.h>
@ -19,6 +12,15 @@ __attribute__((constructor)) void init(void) {
*/
import "C"
/*
As per the setns documentation, it is impossible to enter a
mount namespace from a multithreaded process.
One MUST insure that opening the namespace happens when the process
has only one thread. This is impossible from golang, as such we call
this C function as a constructor to ensure that it is executed
before the go scheduler launches other threads.
*/
import (
"fmt"
"os"

Loading…
Cancel
Save