summaryrefslogtreecommitdiff
path: root/mount.c
diff options
context:
space:
mode:
Diffstat (limited to 'mount.c')
-rw-r--r--mount.c37
1 files changed, 20 insertions, 17 deletions
diff --git a/mount.c b/mount.c
index 2e3abcc6bc..597df9e614 100644
--- a/mount.c
+++ b/mount.c
@@ -32,6 +32,7 @@
#include "log.h"
#include "strv.h"
#include "mount-setup.h"
+#include "unit-name.h"
static const UnitActiveState state_translation_table[_MOUNT_STATE_MAX] = {
[MOUNT_DEAD] = UNIT_INACTIVE,
@@ -156,10 +157,10 @@ static int mount_add_node_links(Mount *m) {
if (!path_startswith(what, "/dev/"))
return 0;
- if (!(e = unit_name_escape_path(what+1, ".device")))
+ if (!(e = unit_name_build_escape(what+1, NULL, ".device")))
return -ENOMEM;
- r = manager_load_unit(UNIT(m)->meta.manager, e, &device);
+ r = manager_load_unit(UNIT(m)->meta.manager, e, NULL, &device);
free(e);
if (r < 0)
@@ -268,7 +269,7 @@ static int mount_add_target_links(Mount *m) {
else
target = SPECIAL_LOCAL_FS_TARGET;
- if ((r = manager_load_unit(UNIT(m)->meta.manager, target, &u)) < 0)
+ if ((r = manager_load_unit(UNIT(m)->meta.manager, target, NULL, &u)) < 0)
return r;
if (handle)
@@ -337,7 +338,7 @@ static void mount_set_state(Mount *m, MountState state) {
}
if (state != old_state)
- log_debug("%s changed %s → %s", unit_id(UNIT(m)), state_string_table[old_state], state_string_table[state]);
+ log_debug("%s changed %s → %s", UNIT(m)->meta.id, state_string_table[old_state], state_string_table[state]);
unit_notify(UNIT(m), state_translation_table[old_state], state_translation_table[state]);
}
@@ -366,6 +367,7 @@ static int mount_spawn(Mount *m, ExecCommand *c, pid_t *_pid) {
goto fail;
if ((r = exec_spawn(c,
+ NULL,
&m->exec_context,
NULL, 0,
true,
@@ -492,7 +494,7 @@ static void mount_enter_signal(Mount *m, MountState state, bool success) {
return;
fail:
- log_warning("%s failed to kill processes: %s", unit_id(UNIT(m)), strerror(-r));
+ log_warning("%s failed to kill processes: %s", UNIT(m)->meta.id, strerror(-r));
if (state == MOUNT_REMOUNTING_SIGTERM || state == MOUNT_REMOUNTING_SIGKILL)
mount_enter_mounted(m, false);
@@ -528,7 +530,7 @@ static void mount_enter_unmounting(Mount *m, bool success) {
return;
fail:
- log_warning("%s failed to run umount exectuable: %s", unit_id(UNIT(m)), strerror(-r));
+ log_warning("%s failed to run umount exectuable: %s", UNIT(m)->meta.id, strerror(-r));
mount_enter_mounted(m, false);
}
@@ -574,7 +576,7 @@ static void mount_enter_mounting(Mount *m, bool success) {
return;
fail:
- log_warning("%s failed to run mount exectuable: %s", unit_id(UNIT(m)), strerror(-r));
+ log_warning("%s failed to run mount exectuable: %s", UNIT(m)->meta.id, strerror(-r));
mount_enter_dead(m, false);
}
@@ -745,7 +747,7 @@ static void mount_sigchld_event(Unit *u, pid_t pid, int code, int status) {
exec_status_fill(&m->control_command->exec_status, pid, code, status);
m->control_pid = 0;
- log_debug("%s control process exited, code=%s status=%i", unit_id(u), sigchld_code_to_string(code), status);
+ log_debug("%s control process exited, code=%s status=%i", u->meta.id, sigchld_code_to_string(code), status);
/* Note that mount(8) returning and the kernel sending us a
* mount table change event might happen out-of-order. If an
@@ -800,39 +802,39 @@ static void mount_timer_event(Unit *u, uint64_t elapsed, Watch *w) {
case MOUNT_MOUNTING:
case MOUNT_MOUNTING_DONE:
- log_warning("%s mounting timed out. Stopping.", unit_id(u));
+ log_warning("%s mounting timed out. Stopping.", u->meta.id);
mount_enter_signal(m, MOUNT_MOUNTING_SIGTERM, false);
break;
case MOUNT_REMOUNTING:
- log_warning("%s remounting timed out. Stopping.", unit_id(u));
+ log_warning("%s remounting timed out. Stopping.", u->meta.id);
mount_enter_signal(m, MOUNT_REMOUNTING_SIGTERM, false);
break;
case MOUNT_UNMOUNTING:
- log_warning("%s unmounting timed out. Stopping.", unit_id(u));
+ log_warning("%s unmounting timed out. Stopping.", u->meta.id);
mount_enter_signal(m, MOUNT_UNMOUNTING_SIGTERM, false);
break;
case MOUNT_MOUNTING_SIGTERM:
- log_warning("%s mounting timed out. Killing.", unit_id(u));
+ log_warning("%s mounting timed out. Killing.", u->meta.id);
mount_enter_signal(m, MOUNT_MOUNTING_SIGKILL, false);
break;
case MOUNT_REMOUNTING_SIGTERM:
- log_warning("%s remounting timed out. Killing.", unit_id(u));
+ log_warning("%s remounting timed out. Killing.", u->meta.id);
mount_enter_signal(m, MOUNT_REMOUNTING_SIGKILL, false);
break;
case MOUNT_UNMOUNTING_SIGTERM:
- log_warning("%s unmounting timed out. Killing.", unit_id(u));
+ log_warning("%s unmounting timed out. Killing.", u->meta.id);
mount_enter_signal(m, MOUNT_UNMOUNTING_SIGKILL, false);
break;
case MOUNT_MOUNTING_SIGKILL:
case MOUNT_REMOUNTING_SIGKILL:
case MOUNT_UNMOUNTING_SIGKILL:
- log_warning("%s mount process still around after SIGKILL. Ignoring.", unit_id(u));
+ log_warning("%s mount process still around after SIGKILL. Ignoring.", u->meta.id);
if (m->from_proc_self_mountinfo)
mount_enter_mounted(m, false);
@@ -879,7 +881,7 @@ static int mount_add_one(
if (streq(where, "/"))
e = strdup("-.mount");
else
- e = unit_name_escape_path(where+1, ".mount");
+ e = unit_name_build_escape(where+1, NULL, ".mount");
if (!e)
return -ENOMEM;
@@ -1245,7 +1247,7 @@ int mount_path_is_mounted(Manager *m, const char* path) {
char *e, *slash;
Unit *u;
- if (!(e = unit_name_escape_path(t+1, ".mount"))) {
+ if (!(e = unit_name_build_escape(t+1, NULL, ".mount"))) {
r = -ENOMEM;
goto finish;
}
@@ -1281,6 +1283,7 @@ const UnitVTable mount_vtable = {
.suffix = ".mount",
.no_alias = true,
+ .no_instances = true,
.init = mount_init,
.load = mount_load,