diff options
author | Lennart Poettering <lennart@poettering.net> | 2016-08-30 16:44:51 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-08-30 16:44:51 +0200 |
commit | 43f1f9a61d108ab82c189bd854b9a276aebea6ec (patch) | |
tree | 7db8a226fc8b12fa9cf2f1216231fbd74bde72e8 /src/core/mount.c | |
parent | 4a13100c6a5a0a4b793e90bd43d21c3696c42d46 (diff) | |
parent | 49915de2451a2ddbd2449a825c682b9731432895 (diff) |
Merge pull request #4053 from brulon/force-unmount
add ForceUnmount= setting for mount units
Diffstat (limited to 'src/core/mount.c')
-rw-r--r-- | src/core/mount.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/core/mount.c b/src/core/mount.c index 2c2a54edbb..04025b83b9 100644 --- a/src/core/mount.c +++ b/src/core/mount.c @@ -678,7 +678,9 @@ static void mount_dump(Unit *u, FILE *f, const char *prefix) { "%sFrom /proc/self/mountinfo: %s\n" "%sFrom fragment: %s\n" "%sDirectoryMode: %04o\n" - "%sLazyUnmount: %s\n", + "%sSloppyOptions: %s\n" + "%sLazyUnmount: %s\n" + "%sForceUnmount: %s\n", prefix, mount_state_to_string(m->state), prefix, mount_result_to_string(m->result), prefix, m->where, @@ -688,7 +690,9 @@ static void mount_dump(Unit *u, FILE *f, const char *prefix) { prefix, yes_no(m->from_proc_self_mountinfo), prefix, yes_no(m->from_fragment), prefix, m->directory_mode, - prefix, yes_no(m->lazy_unmount)); + prefix, yes_no(m->sloppy_options), + prefix, yes_no(m->lazy_unmount), + prefix, yes_no(m->force_unmount)); if (m->control_pid > 0) fprintf(f, @@ -850,6 +854,8 @@ static void mount_enter_unmounting(Mount *m) { r = exec_command_set(m->control_command, UMOUNT_PATH, m->where, NULL); if (r >= 0 && m->lazy_unmount) r = exec_command_append(m->control_command, "-l", NULL); + if (r >= 0 && m->force_unmount) + r = exec_command_append(m->control_command, "-f", NULL); if (r < 0) goto fail; |