summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2014-11-21 01:20:57 +0100
committerLennart Poettering <lennart@poettering.net>2014-11-21 01:20:57 +0100
commit812bd1e6ab4c463507557f2bdbb8875fedd92ade (patch)
tree436a614a9de3b40876086d1c695dee64fb9d902f
parenteab459bc0639b81b32735f36d3e929e4bfa2cb4b (diff)
units: make sure rfkill service is bount to the actual hardware
-rw-r--r--rules/99-systemd.rules.in2
-rw-r--r--units/systemd-rfkill@.service.in1
2 files changed, 2 insertions, 1 deletions
diff --git a/rules/99-systemd.rules.in b/rules/99-systemd.rules.in
index e30d9a8f1b..b66d727a48 100644
--- a/rules/99-systemd.rules.in
+++ b/rules/99-systemd.rules.in
@@ -62,7 +62,7 @@ SUBSYSTEM=="leds", KERNEL=="*kbd_backlight", TAG+="systemd", IMPORT{builtin}="pa
# Pull in rfkill save/restore for all rfkill devices
-SUBSYSTEM=="rfkill", TAG+="systemd", IMPORT{builtin}="path_id", ENV{SYSTEMD_WANTS}+="systemd-rfkill@$name.service"
+SUBSYSTEM=="rfkill", TAG+="systemd", IMPORT{builtin}="path_id", ENV{SYSTEMD_ALIAS}+="/sys/subsystem/rfkill/devices/%k", ENV{SYSTEMD_WANTS}+="systemd-rfkill@$name.service"
# Asynchronously mount file systems implemented by these modules as
# soon as they are loaded.
diff --git a/units/systemd-rfkill@.service.in b/units/systemd-rfkill@.service.in
index 0e9851bf2e..b48efe5d99 100644
--- a/units/systemd-rfkill@.service.in
+++ b/units/systemd-rfkill@.service.in
@@ -9,6 +9,7 @@
Description=Load/Save RF Kill Switch Status of %I
Documentation=man:systemd-rfkill@.service(8)
DefaultDependencies=no
+BindsTo=sys-subsystem-rfkill-devices-%i.device
RequiresMountsFor=/var/lib/systemd/rfkill
Conflicts=shutdown.target
After=systemd-remount-fs.service