Просмотр исходного кода

Fix race condition between parseSecurityOpt and container.Mount

Signed-off-by: Alexandr Morozov <lk4d4@docker.com>
Alexandr Morozov 10 лет назад
Родитель
Сommit
862952c8d4
1 измененных файлов с 4 добавлено и 2 удалено
  1. 4 2
      daemon/start.go

+ 4 - 2
daemon/start.go

@@ -44,6 +44,8 @@ func (daemon *Daemon) ContainerStart(job *engine.Job) engine.Status {
 }
 
 func (daemon *Daemon) setHostConfig(container *Container, hostConfig *runconfig.HostConfig) error {
+	container.Lock()
+	defer container.Unlock()
 	if err := parseSecurityOpt(container, hostConfig); err != nil {
 		return err
 	}
@@ -66,8 +68,8 @@ func (daemon *Daemon) setHostConfig(container *Container, hostConfig *runconfig.
 	if err := daemon.RegisterLinks(container, hostConfig); err != nil {
 		return err
 	}
-	container.SetHostConfig(hostConfig)
-	container.ToDisk()
+	container.hostConfig = hostConfig
+	container.toDisk()
 
 	return nil
 }