From: Lennart Poettering Date: Thu, 2 Sep 2010 23:42:19 +0000 (+0200) Subject: target: implicitly shutdown targets on shutdown, so that they are pulled into the... X-Git-Tag: v9~8 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=b401e1fb9df7ea8b0fd26e16d886056a5ae7c5d9;ds=sidebyside target: implicitly shutdown targets on shutdown, so that they are pulled into the final transaction and may be used for synchronization --- diff --git a/src/target.c b/src/target.c index c350d8fa1..1118693a3 100644 --- a/src/target.c +++ b/src/target.c @@ -75,7 +75,8 @@ static int target_add_default_dependencies(Target *t) { if ((r = unit_add_dependency(UNIT(t), UNIT_AFTER, other, true)) < 0) return r; - return 0; + /* Make sure targets are unloaded on shutdown */ + return unit_add_dependency_by_name(UNIT(t), UNIT_CONFLICTED_BY, SPECIAL_SHUTDOWN_TARGET, NULL, true); } static int target_add_getty_dependencies(Target *t) { diff --git a/units/halt.target b/units/halt.target index 70e90fedd..04b42cd3d 100644 --- a/units/halt.target +++ b/units/halt.target @@ -9,6 +9,7 @@ [Unit] Description=Halt +DefaultDependencies=no Requires=halt.service After=halt.service AllowIsolate=yes diff --git a/units/poweroff.target b/units/poweroff.target index cb9460639..975b08896 100644 --- a/units/poweroff.target +++ b/units/poweroff.target @@ -9,6 +9,7 @@ [Unit] Description=Power-Off +DefaultDependencies=no Names=runlevel0.target Requires=poweroff.service After=poweroff.service diff --git a/units/reboot.target b/units/reboot.target index 855751306..2cd46a062 100644 --- a/units/reboot.target +++ b/units/reboot.target @@ -9,6 +9,7 @@ [Unit] Description=Reboot +DefaultDependencies=no Names=runlevel6.target Requires=reboot.service After=reboot.service diff --git a/units/shutdown.target b/units/shutdown.target index 6d1fb6f10..4db9f1fbe 100644 --- a/units/shutdown.target +++ b/units/shutdown.target @@ -9,5 +9,6 @@ [Unit] Description=Shutdown +DefaultDependencies=no RefuseManualStart=yes IgnoreDependencyFailure=yes