ceph/ceph — pull request #2099 by onlyjob (2014-07-13 19:52:39+00:00)
Title: rbdmap: lazy umount on shutdown and reboot (runlevel 0 and 6)

Do lazy unmount in runlevel 0 and 6. This is necessary to avoid unclean
shutdown due to "umount" hangs on reboot.

"rbdmap" fail to umount and unmap RBD device when some applications are
still using file system on RBD. If RBD device not released on
shutdown/reboot system deconfigures network interfaces, terminates
remaining processes then tries to umount remaining file systems where it
hangs forever in endless libceph attempt to reach MONs. This scenario was
observed when /home is located on RBD device (users start processes in
screen/tmux etc.). Even worse, `umount` stuck on RBD mount point so
remaining local file systems are never un-mounted making unclean shutdown
almost inevitable.

Lazy umount is effective because it allows to release RBD device and
unmount file system when applications are terminated.

Signed-off-by: Dmitry Smirnov