[systemd-commits] src/core

Lennart Poettering lennart at kemper.freedesktop.org
Tue Jan 15 19:04:07 PST 2013


 src/core/umount.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

New commits:
commit 0c08f5cde749bd2818475e487109cd0d413452df
Author: Lennart Poettering <lennart at poettering.net>
Date:   Wed Jan 16 03:51:56 2013 +0100

    shutdown: in the final umount loop don't use MNT_FORCE
    
    MNT_FORCE is honoured by NFS and FUSE and allows unmounting of the FS
    even if consumers still use it. For our brute-force loop we rely on
    EBUSY being reported as long as a file system is still used by a
    loopback device or suchlike. Hence, drop MNT_FORCE to make EBUSY
    reliable.

diff --git a/src/core/umount.c b/src/core/umount.c
index 96232d3..c7b6cee 100644
--- a/src/core/umount.c
+++ b/src/core/umount.c
@@ -442,9 +442,11 @@ static int mount_points_list_umount(MountPoint **head, bool *changed, bool log_e
                 )
                         continue;
 
-                /* Trying to umount. Forcing to umount if busy (only for NFS mounts) */
+                /* Trying to umount. We don't force here since we rely
+                 * on busy NFS and FUSE file systems to return EBUSY
+                 * until we closed everything on top of them. */
                 log_info("Unmounting %s.", m->path);
-                if (umount2(m->path, MNT_FORCE) == 0) {
+                if (umount2(m->path, 0) == 0) {
                         if (changed)
                                 *changed = true;
 



More information about the systemd-commits mailing list