Explorar o código

Merge pull request #9625 from LK4D4/fix_race_in_sec_opts

Fix race condition between parseSecurityOpt and container.Mount
Jessie Frazelle %!s(int64=10) %!d(string=hai) anos
pai
achega
b66abaa291
Modificáronse 1 ficheiros con 4 adicións e 2 borrados
  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
 }