Explorar el Código

Fix race between execdriver.Kill and execdriver.Run

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
Alexander Morozov hace 10 años
padre
commit
ca7219f5da
Se han modificado 1 ficheros con 2 adiciones y 0 borrados
  1. 2 0
      daemon/execdriver/native/driver.go

+ 2 - 0
daemon/execdriver/native/driver.go

@@ -245,7 +245,9 @@ func waitInPIDHost(p *libcontainer.Process, c libcontainer.Container) func() (*o
 }
 
 func (d *driver) Kill(c *execdriver.Command, sig int) error {
+	d.Lock()
 	active := d.activeContainers[c.ID]
+	d.Unlock()
 	if active == nil {
 		return fmt.Errorf("active container for %s does not exist", c.ID)
 	}