diff --git a/libcontainerd/pausemonitor_linux.go b/libcontainerd/pausemonitor_linux.go index 379cbf1fcb..80f5d025db 100644 --- a/libcontainerd/pausemonitor_linux.go +++ b/libcontainerd/pausemonitor_linux.go @@ -1,11 +1,18 @@ package libcontainerd +import ( + "sync" +) + // pauseMonitor is helper to get notifications from pause state changes. type pauseMonitor struct { + sync.Mutex waiters map[string][]chan struct{} } func (m *pauseMonitor) handle(t string) { + m.Lock() + defer m.Unlock() if m.waiters == nil { return } @@ -20,6 +27,8 @@ func (m *pauseMonitor) handle(t string) { } func (m *pauseMonitor) append(t string, waiter chan struct{}) { + m.Lock() + defer m.Unlock() if m.waiters == nil { m.waiters = make(map[string][]chan struct{}) }