1

I'm running RHEL (kernel 4.1.12) with Docker (1.12.1) and my docker service dockerd became a zombie [dockerd] <defunct> with PID 412

# ps -a | grep dockerd
    1   412   412   412 ?           -1 Zsl      0  23:28 [dockerd] <defunct>

and it holds resources, in particular a device 251:4 (/dev/dm-4) which is a Device Mapper managed:

# dmsetup ls
docker-251:0-6815748-pool       (251:1)
docker-251:0-6815748-e97dd950.......59a691feaf6     (251:4)

# lsof | grep 251,4
dockerd     412  6844           root 1257u      BLK              251,4       0t0    2439769 /dev/dm-4

as a result, removing the thin entry docker-251:0-6815748-e97dd950.......59a691feaf6 fails

# dmsetup remove docker-251:0-6815748-e97dd950.......59a691feaf6
device-mapper: remove ioctl on docker-251:0-6815748-e97dd950.......59a691feaf6 failed: Device or resource busy
Command failed

Any suggestions how to cleanup the leftovers of the docker service (e.g., all the DM entries) besides restarting the whole system?

Is it really possible that a zombie process holds resources?

Stepan Vavra
  • 3,884
  • 5
  • 29
  • 40
  • The question is a good and valid one, but I think it is a better fit for [SF] (or [SU], depending on what the boundary between professional and generic infrastructure is) – ppeterka Sep 19 '16 at 13:27
  • Could it be any underlying 'aufs' mounts used by docker causing the device to be busy? Check /proc/mounts, unmount any mounts and re-try dmsetup remove – VenkatC Sep 19 '16 at 15:01
  • I see your storage driver is devicemapper, so ignore aufs part, but check /proc/mounts for any mounts – VenkatC Sep 19 '16 at 15:13
  • Yeah, having the DM device mounted would prevent the *remove* operation from being successful; unfortunately, that's not this case. :( but thanks anyway! I even nuked the whole */var/lib/docker* dir and still I'm unable to get rid off the Docker's DM managed devices. – Stepan Vavra Sep 19 '16 at 15:52
  • @StepanVavra did you ever figure this out? I'm having the same issue. – ehaydenr Mar 03 '17 at 07:57

0 Answers0