From da0bc5f690ba507798aea0ee10672eebd6f9513c Mon Sep 17 00:00:00 2001 From: CJ Cullen Date: Wed, 8 Jul 2015 14:58:14 -0700 Subject: [PATCH] Remove race in setting/reading kubelet.podCIDR --- pkg/kubelet/kubelet.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkg/kubelet/kubelet.go b/pkg/kubelet/kubelet.go index 03680863168..53843a068fc 100644 --- a/pkg/kubelet/kubelet.go +++ b/pkg/kubelet/kubelet.go @@ -1959,6 +1959,7 @@ func (kl *Kubelet) syncNetworkStatus() { glog.Errorf("Error on adding ip table rules: %v", err) } if len(kl.podCIDR) == 0 { + glog.Warningf("ConfigureCBR0 requested, but PodCIDR not set. Will not configure CBR0 right now") networkConfigured = false } else if err := kl.reconcileCBR0(kl.podCIDR); err != nil { networkConfigured = false @@ -2130,7 +2131,9 @@ func (kl *Kubelet) tryUpdateNodeStatus() error { if node == nil { return fmt.Errorf("no node instance returned for %q", kl.nodeName) } + kl.networkConfigMutex.Lock() kl.podCIDR = node.Spec.PodCIDR + kl.networkConfigMutex.Unlock() if err := kl.setNodeStatus(node); err != nil { return err