1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/daemon
Vivek Goyal 39bdf601f6 devmapper: Return device id in error message
I often get complains that container removal failed and users got following
error message.

"Driver devicemapper failed to remove root filesystem 18a69ba82aaf7a039ce7d44156215012d703001643079775190ac7dd6c6acf56:Device is Busy"

This error message talks about container id but does not give any info
about which particular device id is busy. Most likely device is mounted
in some other mount namespace and if one knows the device id, they
can try to do some debugging figuring which process and which mount
namespace is keeping the device busy and how did we reach that stage.

Without that information, it becomes almost impossible to debug the
problem.

So to improve the debuggability, when device removal fails, also return
device id in error message. Now new message looks as follows.

"Driver devicemapper failed to remove root filesystem 18a69ba82aaf7a039ce7d44156215012d703001643079775190ac7dd6c6acf56: Failed to remove device dbc15bdf9994a17c613d8ef9e924f3cffbf67f91e4f709295c901ad628377991:Device is Busy"

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
2017-01-05 15:02:21 -05:00
..
caps
cluster Remove the redundant 'if' statements 2017-01-03 11:31:41 +08:00
events modify some files 2016-12-22 08:38:37 +08:00
exec Move StreamConfig out of runconfig 2016-11-14 15:15:09 -05:00
graphdriver devmapper: Return device id in error message 2017-01-05 15:02:21 -05:00
initlayer Implement content addressability for plugins 2016-12-23 13:29:58 -08:00
links check typos and fix in daemon directory 2016-11-26 17:23:21 +08:00
logger fix syscall.GUID composite literal uses unkeyed fields 2017-01-03 17:12:15 +08:00
network Fix autostart for swarm scope connected containers 2016-09-13 14:21:58 -07:00
apparmor_default.go daemon: switch to 'ensure' workflow for AppArmor profiles 2016-12-07 08:47:28 +11:00
apparmor_default_unsupported.go daemon: switch to 'ensure' workflow for AppArmor profiles 2016-12-07 08:47:28 +11:00
archive.go Fix uneccessary calls to volume.Unmount() 2016-11-10 14:04:08 -05:00
archive_unix.go Windows: docker cp consistent paths 2016-05-06 16:08:53 -07:00
archive_windows.go Windows: Remove TP4 support from main code 2016-04-06 12:12:20 -07:00
attach.go Move errors/ to api/errors 2016-09-16 12:27:13 -04:00
auth.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
bindmount_solaris.go Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
bindmount_unix.go Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
cache.go Implement build cache based on history array 2016-09-23 11:30:06 -07:00
changes.go Windows: support docker diff 2016-10-28 11:06:54 -07:00
checkpoint.go Move names to package api 2016-12-21 22:42:47 +01:00
cluster.go add docker network prune 2016-10-25 06:43:54 +00:00
commit.go commit: do not change container labels on commit 2016-12-19 09:56:20 -08:00
config.go Merge pull request #28631 from likel/master 2016-12-30 01:13:12 +01:00
config_common_unix.go Clean some stuff from runconfig that are cli only… 2016-12-24 13:16:00 +01:00
config_experimental.go Make experimental a runtime flag 2016-10-24 15:20:01 -07:00
config_solaris.go Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
config_test.go Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
config_unix.go Clean some stuff from runconfig that are cli only… 2016-12-24 13:16:00 +01:00
config_unix_test.go fix config load error with ulimits 2016-10-17 18:48:40 +08:00
config_windows.go Update docker daemon to dockerd 2016-12-27 17:32:15 +08:00
config_windows_test.go fix config load error with ulimits 2016-10-17 18:48:40 +08:00
container.go Clean some stuff from runconfig that are cli only… 2016-12-24 13:16:00 +01:00
container_operations.go display network name when disconnecting network error 2016-12-27 13:37:54 +08:00
container_operations_solaris.go Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
container_operations_unix.go plugins: support for devices 2016-11-22 09:54:45 -08:00
container_operations_windows.go Windows: Factor out unused fields in container 2016-10-13 14:51:10 -07:00
create.go Fix issue for --hostname when running in "--net=host" 2016-12-06 07:29:45 -08:00
create_unix.go Add new HostConfig field, Mounts. 2016-09-13 09:55:35 -04:00
create_windows.go Windows: Revert 27884 2016-11-16 13:38:45 -08:00
daemon.go support registry mirror config reload 2017-01-04 11:04:00 +08:00
daemon_experimental.go move plugins out of experimental 2016-11-10 15:51:32 -08:00
daemon_linux.go Fix container mount cleanup issues 2016-03-30 17:25:49 -07:00
daemon_linux_test.go Fix container mount cleanup issues 2016-03-30 17:25:49 -07:00
daemon_solaris.go fix nits in comments 2016-12-27 23:30:50 +08:00
daemon_test.go support registry mirror config reload 2017-01-04 11:04:00 +08:00
daemon_unix.go Merge pull request #29683 from vdemeester/runconfig-clean 2016-12-29 17:42:08 +01:00
daemon_unix_test.go Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
daemon_unsupported.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
daemon_windows.go fix nits in comments 2016-12-27 23:30:50 +08:00
debugtrap.go Reduce spew data dumped 2016-11-17 13:10:48 -05:00
debugtrap_unix.go Spew debugging 2016-11-03 10:05:11 -07:00
debugtrap_unsupported.go Spew debugging 2016-11-03 10:05:11 -07:00
debugtrap_windows.go Spew debugging 2016-11-03 10:05:11 -07:00
delete.go Rename Remote API to Engine API 2016-11-22 12:49:38 +00:00
delete_test.go make client side know container removal in progress 2016-09-27 18:06:54 +08:00
discovery.go validate heartbeat in discovery cluster opts 2016-09-01 01:07:05 +08:00
discovery_test.go validate heartbeat in discovery cluster opts 2016-09-01 01:07:05 +08:00
disk_usage.go Add reference filter and deprecated filter param… 2016-11-11 15:34:01 +01:00
errors.go Move errors/ to api/errors 2016-09-16 12:27:13 -04:00
events.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
events_test.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
exec.go Move ReplaceOrAppendEnvValues to container package 2016-12-21 22:42:39 +01:00
exec_linux.go Remove hacked Windows OCI spec, compile fixups 2016-09-27 12:07:35 -07:00
exec_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
exec_windows.go Windows: Plumb through user 2016-11-08 17:41:56 -08:00
export.go pkg/archive: remove unnecessary Archive and Reader type 2016-10-20 19:31:24 -07:00
getsize_unix.go Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
health.go Merge pull request #28438 from vdemeester/use-container-shell-instead-of-hardcoded 2016-11-18 18:54:36 -08:00
health_test.go Enhance pkg/{httputils,integration}, distribution/xfer unit tests 2016-12-28 11:54:05 +01:00
image.go Deprecate repo:shortid syntax 2016-10-06 17:12:17 -07:00
image_delete.go Add basic prometheus support 2016-10-27 10:34:38 -07:00
image_exporter.go Move some image related methods & struct to smaller files 2016-05-21 22:36:11 +02:00
image_history.go Add basic prometheus support 2016-10-27 10:34:38 -07:00
image_inspect.go Inspect populate image OSVersion 2016-10-06 11:46:24 -07:00
image_pull.go Implement content addressability for plugins 2016-12-23 13:29:58 -08:00
image_push.go Implement content addressability for plugins 2016-12-23 13:29:58 -08:00
image_tag.go Generalize content addressable and reference storage 2016-09-15 18:08:19 -07:00
images.go Add reference filter and deprecated filter param… 2016-11-11 15:34:01 +01:00
import.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
info.go Move debug functions to cli/debug package 2016-12-12 09:33:58 +01:00
info_unix.go api: types: keep info.SecurityOptions a string slice 2016-11-19 13:21:16 +01:00
info_windows.go api: types: keep info.SecurityOptions a string slice 2016-11-19 13:21:16 +01:00
inspect.go record pid of exec'd process 2016-10-20 17:06:11 +02:00
inspect_solaris.go Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
inspect_unix.go Add new HostConfig field, Mounts. 2016-09-13 09:55:35 -04:00
inspect_windows.go Add new HostConfig field, Mounts. 2016-09-13 09:55:35 -04:00
keys.go Change root_maxkeys 2016-06-27 10:23:37 -07:00
keys_unsupported.go change minor mistake of spelling 2016-12-20 21:05:19 +08:00
kill.go fix nits in comments 2016-12-27 23:30:50 +08:00
links.go Windows: Factor out sqlite 2016-12-01 09:38:08 -08:00
links_linux.go Windows: Factor out sqlite 2016-12-01 09:38:08 -08:00
links_linux_test.go Windows: Factor out sqlite 2016-12-01 09:38:08 -08:00
links_notlinux.go Windows: Factor out sqlite 2016-12-01 09:38:08 -08:00
list.go Replace all "Filter" field with "Filters" for consistency 2016-11-01 23:09:30 +08:00
list_unix.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
list_windows.go
logdrivers_linux.go added logentries driver 2016-10-06 22:48:53 -03:00
logdrivers_windows.go Windows: Enable fluentd logdriver 2016-11-08 19:54:57 -08:00
logs.go Remove redundant format 2016-12-27 21:46:52 +08:00
logs_test.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
metrics.go Add basic prometheus support 2016-10-27 10:34:38 -07:00
monitor.go Move StreamConfig out of runconfig 2016-11-14 15:15:09 -05:00
monitor_linux.go Adding postRunProcessing infrastructure for hanlding Windows Update. 2016-04-06 14:03:05 -07:00
monitor_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
monitor_windows.go Move stdio attach from libcontainerd backend to callback 2016-10-24 00:20:36 -07:00
mounts.go Add new HostConfig field, Mounts. 2016-09-13 09:55:35 -04:00
names.go Move names to package api 2016-12-21 22:42:47 +01:00
network.go Swarmkit has enabled the plugin filtering logic based on the drivers 2017-01-04 12:38:14 -08:00
oci_linux.go daemon: switch to 'ensure' workflow for AppArmor profiles 2016-12-07 08:47:28 +11:00
oci_solaris.go Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
oci_windows.go Windows: Fix a longstanding TODO 2016-11-18 10:20:43 -08:00
pause.go
prune.go Convert DanglingOnly to Filters for docker image prune 2016-12-02 20:08:49 -08:00
rename.go Remove redundant format 2016-12-27 21:46:52 +08:00
resize.go
restart.go Allow providing a custom storage directory for docker checkpoints 2016-10-28 07:56:05 -04:00
search.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
search_test.go Remove redundant format 2016-12-27 21:46:52 +08:00
seccomp_disabled.go Replace old oci specs import with runtime-specs 2016-08-17 09:38:34 -07:00
seccomp_linux.go daemon: add a flag to override the default seccomp profile 2016-11-02 21:41:29 +01:00
seccomp_unsupported.go Fix seccomp output in docker info 2016-07-08 17:26:42 -07:00
secrets.go do not force target type for secret references 2016-11-17 15:49:02 -05:00
secrets_linux.go secrets: secret management for swarm 2016-11-09 14:27:43 -05:00
secrets_unsupported.go secrets: secret management for swarm 2016-11-09 14:27:43 -05:00
selinux_linux.go
selinux_unsupported.go
start.go fix #29199, reset container if container start failed 2016-12-07 01:37:08 -05:00
start_unix.go Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
start_windows.go Swarm-mode overlay networking support for windows 2016-11-10 09:54:40 -08:00
stats.go Rename Remote API to Engine API 2016-11-22 12:49:38 +00:00
stats_collector.go Windows: stats support 2016-09-16 11:56:15 -07:00
stats_collector_solaris.go Get the Docker Engine to build clean on Solaris 2016-05-23 16:37:12 -07:00
stats_collector_unix.go Windows: stats support 2016-09-16 11:56:15 -07:00
stats_collector_windows.go Windows: stats support 2016-09-16 11:56:15 -07:00
stats_unix.go Removed engine-api leftovers 2016-09-21 12:36:52 +02:00
stats_windows.go Windows: stats support 2016-09-16 11:56:15 -07:00
stop.go fix nits in comments 2016-12-27 23:30:50 +08:00
top_unix.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
top_unix_test.go Validate arguments for ps in docker top 2016-07-08 05:58:11 +00:00
top_windows.go Windows: docker top implementation 2016-09-07 16:29:02 -07:00
unpause.go remove running judgement when unpause container 2016-08-29 10:16:18 +08:00
update.go Fix update clear the restart policy of monitor 2016-12-16 20:57:05 -05:00
update_linux.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
update_solaris.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
update_windows.go Add engine-api types to docker 2016-09-07 11:05:58 -07:00
volumes.go Rename Remote API to Engine API 2016-11-22 12:49:38 +00:00
volumes_unit_test.go
volumes_unix.go close the file 2016-11-21 19:56:01 +08:00
volumes_windows.go Remove hacked Windows OCI spec, compile fixups 2016-09-27 12:07:35 -07:00
wait.go Fix race on force deleting container created by task 2016-06-14 16:49:04 -07:00
workdir.go COPY file . after WORKDIR (now always created) 2016-11-23 09:56:02 -08:00