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.
This commit is contained in:
parent
61a9648f02
commit
95f1b47d27
|
@ -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);
|
||||
|
|
Loading…
Reference in a new issue