From 71f08ec63f2cdf7d27f4321fce1b649c70845c76 Mon Sep 17 00:00:00 2001 From: "Pradipta Kr. Banerjee" Date: Fri, 5 Jun 2015 14:25:59 +0530 Subject: [PATCH] Update netns to include support for PowerPC LE (ppc64le) architecture Current version of netns used in libnetwork do not have requisite syscall entry for PowerPC (ppc64le) arch. Consequently docker which uses libnetwork fails to create any network enabled containers on Power systems. This patch updates netns to latest commit 5478c060110032f972e86a1f844fdb9a2f008f2c to add ppc64le syscall entry. Signed-off-by: Pradipta Kr. Banerjee --- libnetwork/Godeps/Godeps.json | 2 +- .../src/github.com/vishvananda/netns/netns.go | 1 + .../src/github.com/vishvananda/netns/netns_linux.go | 2 ++ .../github.com/vishvananda/netns/netns_linux_386.go | 2 ++ .../{netns_linux_amd.go => netns_linux_amd64.go} | 2 ++ .../github.com/vishvananda/netns/netns_linux_arm.go | 2 ++ .../vishvananda/netns/netns_linux_ppc64le.go | 7 +++++++ .../vishvananda/netns/netns_unspecified.go | 12 ++++++------ 8 files changed, 23 insertions(+), 7 deletions(-) rename libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/{netns_linux_amd.go => netns_linux_amd64.go} (64%) create mode 100644 libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_ppc64le.go diff --git a/libnetwork/Godeps/Godeps.json b/libnetwork/Godeps/Godeps.json index 9484759d7c..e953f869a5 100644 --- a/libnetwork/Godeps/Godeps.json +++ b/libnetwork/Godeps/Godeps.json @@ -113,7 +113,7 @@ }, { "ImportPath": "github.com/vishvananda/netns", - "Rev": "008d17ae001344769b031375bdb38a86219154c6" + "Rev": "5478c060110032f972e86a1f844fdb9a2f008f2c" } ] } diff --git a/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns.go b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns.go index 3878da3389..2ca0feedd5 100644 --- a/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns.go +++ b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns.go @@ -12,6 +12,7 @@ import ( "fmt" "syscall" ) + // NsHandle is a handle to a network namespace. It can be cast directly // to an int and used as a file descriptor. type NsHandle int diff --git a/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux.go b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux.go index 1cf5e136ec..c9170d6426 100644 --- a/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux.go +++ b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux.go @@ -1,3 +1,5 @@ +// +build linux + package netns import ( diff --git a/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_386.go b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_386.go index 0a6fe49a0b..1d769bb151 100644 --- a/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_386.go +++ b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_386.go @@ -1,3 +1,5 @@ +// +build linux,386 + package netns const ( diff --git a/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_amd.go b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_amd64.go similarity index 64% rename from libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_amd.go rename to libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_amd64.go index bbf3f4de49..b124666f18 100644 --- a/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_amd.go +++ b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_amd64.go @@ -1,3 +1,5 @@ +// +build linux,amd64 + package netns const ( diff --git a/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_arm.go b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_arm.go index e35cb07647..fbf165eb0a 100644 --- a/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_arm.go +++ b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_arm.go @@ -1,3 +1,5 @@ +// +build linux,arm + package netns const ( diff --git a/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_ppc64le.go b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_ppc64le.go new file mode 100644 index 0000000000..c49eba5ee5 --- /dev/null +++ b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_linux_ppc64le.go @@ -0,0 +1,7 @@ +// +build linux,ppc64le + +package netns + +const ( + SYS_SETNS = 350 +) diff --git a/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_unspecified.go b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_unspecified.go index 42a804fe88..b2edc565bd 100644 --- a/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_unspecified.go +++ b/libnetwork/Godeps/_workspace/src/github.com/vishvananda/netns/netns_unspecified.go @@ -10,26 +10,26 @@ var ( ErrNotImplemented = errors.New("not implemented") ) -func Set(ns Namespace) (err error) { +func Set(ns NsHandle) (err error) { return ErrNotImplemented } -func New() (ns Namespace, err error) { +func New() (ns NsHandle, err error) { return -1, ErrNotImplemented } -func Get() (Namespace, error) { +func Get() (NsHandle, error) { return -1, ErrNotImplemented } -func GetFromName(name string) (Namespace, error) { +func GetFromName(name string) (NsHandle, error) { return -1, ErrNotImplemented } -func GetFromPid(pid int) (Namespace, error) { +func GetFromPid(pid int) (NsHandle, error) { return -1, ErrNotImplemented } -func GetFromDocker(id string) (Namespace, error) { +func GetFromDocker(id string) (NsHandle, error) { return -1, ErrNotImplemented }