summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Gundersen <teg@jklm.no>2013-03-05 15:56:47 +0900
committerLennart Poettering <lennart@poettering.net>2013-03-06 16:24:49 +0100
commit95f1b47d27066c139ca685f65a2e4e91e1c3d6a9 (patch)
treee7fdf5cd330ceb8c07376c06ea45d83563fcda74
parent61a9648f022049ac14c5667958752e8dcff857c1 (diff)
main: ISOLATE rather than REPLACE default.target
This allows switch-root to work correctly if a unit is active both before and after the switch-root, but its dependencies change. Before the patch, any dependencies added to active units by switch-root will not be pulled, in particular filesystems configured in /etc/fstab would not be activated if local-fs.target was active in the initrd. It is not clear to me if there is a bug in the REPLACE handling, or if it is working as expected and that we really want to use ISOLATE instead as this patch does.
-rw-r--r--src/core/main.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/core/main.c b/src/core/main.c
index 71e0a6cf2f..2bbea7ec2f 100644
--- a/src/core/main.c
+++ b/src/core/main.c
@@ -1720,7 +1720,7 @@ int main(int argc, char *argv[]) {
manager_dump_units(m, stdout, "\t");
}
- r = manager_add_job(m, JOB_START, target, JOB_REPLACE, false, &error, &default_unit_job);
+ r = manager_add_job(m, JOB_START, target, JOB_ISOLATE, false, &error, &default_unit_job);
if (r < 0) {
log_error("Failed to start default target: %s", bus_error(&error, r));
dbus_error_free(&error);