浏览代码

Merge pull request #483 from mavenugo/cp

Cherry-picking #482 to master
Jana Radhakrishnan 9 年之前
父节点
当前提交
aad77d46dd
共有 1 个文件被更改,包括 9 次插入9 次删除
  1. 9 9
      libnetwork/osl/namespace_linux.go

+ 9 - 9
libnetwork/osl/namespace_linux.go

@@ -244,13 +244,8 @@ func (n *networkNamespace) InvokeFunc(f func()) error {
 	})
 }
 
-func getLink() string {
-	l, err := os.Readlink(fmt.Sprintf("/proc/%d/task/%d/ns/net", os.Getpid(), syscall.Gettid()))
-	if err != nil {
-		return fmt.Sprintf("(nil: %v)", err)
-	}
-
-	return l
+func getLink() (string, error) {
+	return os.Readlink(fmt.Sprintf("/proc/%d/task/%d/ns/net", os.Getpid(), syscall.Gettid()))
 }
 
 func nsInit() {
@@ -266,8 +261,13 @@ func InitOSContext() func() {
 	runtime.LockOSThread()
 	nsOnce.Do(nsInit)
 	if err := netns.Set(initNs); err != nil {
-		log.Errorf("failed to set to initial namespace, link %s, initns fd %d: %v",
-			getLink(), initNs, err)
+		linkInfo, linkErr := getLink()
+		if linkErr != nil {
+			linkInfo = linkErr.Error()
+		}
+
+		log.Errorf("failed to set to initial namespace, %v, initns fd %d: %v",
+			linkInfo, initNs, err)
 	}
 
 	return runtime.UnlockOSThread