moby--moby/daemon
Zhang Wei 7ae170ddab Fix critical bug: can't restart a restarting container
When user try to restart a restarting container, docker client report
error: "container is already active", and container will be stopped
instead be restarted which is seriously wrong.

What's more critical is that when user try to start this container
again, it will always fail.

This error can also be reproduced with a `docker stop`+`docker start`.

And this commit will fix the bug.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
(cherry picked from commit a705e166cf)
2016-04-11 11:19:58 -04:00
..
caps Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
events Compare event nanoseconds properly to filter since a specific date. 2016-03-08 17:07:58 -05:00
exec Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
graphdriver Fix compilation errors with btrfs-progs-4.5 2016-04-06 18:16:33 -04:00
links
logger Open the journald following descriptor earlier 2016-03-31 18:35:37 -04:00
network
apparmor_default.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
apparmor_default_unsupported.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
archive.go Fix copy chown settings to not default to real root 2016-02-18 14:44:13 -08:00
archive_unix.go Remove package daemonbuilder. 2016-02-01 09:57:38 -08:00
archive_windows.go Remove package daemonbuilder. 2016-02-01 09:57:38 -08:00
attach.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
changes.go
commit.go Move layer mount refcounts to mountedLayer 2016-03-25 13:43:06 -04:00
config.go Remove unneeded references to execDriver 2016-03-21 13:06:08 -07:00
config_experimental.go
config_stub.go
config_test.go add validating configs from configuration file 2016-03-16 00:05:52 +08:00
config_unix.go Fixes #21538 2016-03-31 18:35:02 -04:00
config_windows.go Windows libcontainerd implementation 2016-03-18 13:38:41 -07:00
container_operations.go Fix container mount cleanup issues 2016-03-31 18:35:37 -04:00
container_operations_unix.go Fix setting cgroup permission to user/privileged devices 2016-03-25 13:43:07 -04:00
container_operations_windows.go Windows libcontainerd implementation 2016-03-18 13:38:41 -07:00
create.go add label support for build, networks and volumes 2016-03-22 11:49:06 -04:00
create_unix.go Merge pull request #21270 from ehazlett/resource-labels 2016-03-22 15:12:33 -04:00
create_windows.go add label support for build, networks and volumes 2016-03-22 11:49:06 -04:00
daemon.go Fix container mount cleanup issues 2016-03-31 18:35:37 -04:00
daemon_experimental.go
daemon_linux.go Fix container mount cleanup issues 2016-03-31 18:35:37 -04:00
daemon_linux_test.go Fix container mount cleanup issues 2016-03-31 18:35:37 -04:00
daemon_stub.go
daemon_test.go add label support for build, networks and volumes 2016-03-22 11:49:06 -04:00
daemon_unix.go Fix docker stats missing memory limit 2016-04-11 11:19:41 -04:00
daemon_unix_test.go Consolidate security options to use `=` as separator. 2016-03-17 13:34:42 -04:00
daemon_unsupported.go
daemon_windows.go Expose RootFS in image inspect 2016-03-22 13:49:30 -07:00
debugtrap_unix.go
debugtrap_unsupported.go
debugtrap_windows.go
delete.go when container had no layer data, cleanupContainer crashed 2016-04-06 18:16:33 -04:00
delete_test.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
discovery.go fix typos 2016-03-11 23:22:16 +08:00
discovery_test.go Fix minor vet warnings 2016-02-03 10:43:01 -08:00
errors.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
events.go
events_test.go
exec.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
exec_linux.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
exec_windows.go Windows libcontainerd implementation 2016-03-18 13:38:41 -07:00
export.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
image_delete.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
images.go
import.go Fix docker import on compressed data 2016-02-16 11:19:23 -08:00
info.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
inspect.go fix typos in several files 2016-03-18 12:51:57 +08:00
inspect_unix.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
inspect_windows.go Windows libcontainerd implementation 2016-03-18 13:38:41 -07:00
kill.go Fix critical bug: can't restart a restarting container 2016-04-11 11:19:58 -04:00
links.go
links_test.go
list.go Merge pull request #21269 from mlaventure/inspect-bind-mounts 2016-03-18 20:52:02 +01:00
list_unix.go
list_windows.go
logdrivers_linux.go daemon/logger: Add logging driver for Google Cloud Logging 2016-03-01 08:06:10 -08:00
logdrivers_windows.go Windows: Add ETW logging driver plug-in 2016-02-16 13:24:49 -08:00
logs.go Fixing logs file handle leak. 2016-03-18 11:00:15 -07:00
monitor.go Add missing "start" event back for auto-restart container 2016-04-11 11:19:41 -04:00
monitor_linux.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
monitor_windows.go Windows libcontainerd implementation 2016-03-18 13:38:41 -07:00
mounts.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
network.go add label support for build, networks and volumes 2016-03-22 11:49:06 -04:00
oci_linux.go Define readonly/mask paths in spec 2016-04-06 18:15:37 -04:00
oci_windows.go Windows: Tidy after libcontainerd 2016-03-20 15:59:52 -07:00
pause.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
rename.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
resize.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
restart.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
seccomp_disabled.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
seccomp_linux.go Reuse profiles/seccomp package 2016-03-19 14:15:39 -07:00
selinux_linux.go
selinux_unsupported.go
start.go Add missing "start" event back for auto-restart container 2016-04-11 11:19:41 -04:00
stats.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
stats_collector_unix.go Fix docker stats missing memory limit 2016-04-11 11:19:41 -04:00
stats_collector_windows.go
stop.go Remove static errors from errors package. 2016-02-26 15:49:09 -05:00
top_unix.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
top_windows.go Windows: Minimal docker top implementation 2016-03-20 16:45:53 -07:00
unpause.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
update.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
update_linux.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
update_windows.go Windows libcontainerd implementation 2016-03-18 13:38:41 -07:00
volumes.go Merge pull request #21270 from ehazlett/resource-labels 2016-03-22 15:12:33 -04:00
volumes_unit_test.go
volumes_unix.go Replace execdrivers with containerd implementation 2016-03-18 13:38:32 -07:00
volumes_windows.go Remove unneeded references to execDriver 2016-03-21 13:06:08 -07:00
wait.go