Merge pull request #30 from brb/safer-netns

Add go1.10 build constraint
This commit is contained in:
Alessandro Boch 2020-12-29 17:22:02 -08:00 committed by GitHub
commit c4f3ca719c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 1 deletions

View File

@ -48,3 +48,14 @@ func main() {
}
```
## NOTE
The library can be safely used only with Go >= 1.10 due to [golang/go#20676](https://github.com/golang/go/issues/20676).
After locking a goroutine to its current OS thread with `runtime.LockOSThread()`
and changing its network namespace, any new subsequent goroutine won't be
scheduled on that thread while it's locked. Therefore, the new goroutine
will run in a different namespace leading to unexpected results.
See [here](https://www.weave.works/blog/linux-namespaces-golang-followup) for more details.

View File

@ -1,4 +1,4 @@
// +build linux
// +build linux,go1.10
package netns