summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKay Sievers <kay.sievers@vrfy.org>2011-03-29 01:14:53 +0200
committerKay Sievers <kay.sievers@vrfy.org>2011-03-29 01:14:53 +0200
commitce440d1c1bcd9ac05a34bd987bc68744270214d7 (patch)
treefd4bcaddd122fc9f87702b340db3d3e7bd27bc28
parentb4155660f2b60006816de5966d2b1859dc57ff6a (diff)
systemd: do not enable udev-settle.service by default
This barrier service is usually not enabled by default. If enabled, it acts as a barrier for basic.target -- so all later services will wait for udev completely finishing its coldplug run. It might be enabled just unconditionally, or pulled-in on-demand by broken or non-hotplug-aware services that assume a fully populated /dev at startup.
-rw-r--r--Makefile.am1
-rw-r--r--NEWS7
-rw-r--r--init/udev-settle.service.in11
3 files changed, 18 insertions, 1 deletions
diff --git a/Makefile.am b/Makefile.am
index d8ce4b3f15..df70bf73be 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -137,7 +137,6 @@ systemd-install-hook:
mkdir -p $(DESTDIR)$(systemdsystemunitdir)/basic.target.wants
ln -sf ../udev.service $(DESTDIR)$(systemdsystemunitdir)/basic.target.wants/udev.service
ln -sf ../udev-trigger.service $(DESTDIR)$(systemdsystemunitdir)/basic.target.wants/udev-trigger.service
- ln -sf ../udev-settle.service $(DESTDIR)$(systemdsystemunitdir)/basic.target.wants/udev-settle.service
INSTALL_DATA_HOOKS += systemd-install-hook
endif
diff --git a/NEWS b/NEWS
index 63826003e7..b86e0bcca0 100644
--- a/NEWS
+++ b/NEWS
@@ -19,6 +19,13 @@ is preserved for the udev version started in the rootfs.
The command 'udevadm info --convert-db' is gone. The udev daemon
itself, at startup, converts any old database version if necessary.
+The systemd services files have been reorganized. The udev control
+socket is bound by systemd and passed to the started udev daemon.
+The udev-settle.service is no longer active by default. Services which
+can not handle hotplug setups properly need to actively pull it in to
+act like a barrier for basic.target. Alternatively the settle service
+can be unconditionally 'systemctl'enabled to work-around such services.
+
The fstab_import callout is no longer built or installed. Udev
should not be used to mount, does not watch changes to fstab, and
should not mirror fstab values in the udev database.
diff --git a/init/udev-settle.service.in b/init/udev-settle.service.in
index c5d7e96cb3..be06a39352 100644
--- a/init/udev-settle.service.in
+++ b/init/udev-settle.service.in
@@ -1,3 +1,11 @@
+# This barrier service is usually not enabled by default. If enabled,
+# it acts as a barrier for basic.target -- so all later services will
+# wait for udev completely finishing its coldplug run.
+#
+# It might be enabled just unconditionally, or pulled-in on-demand by
+# broken or non-hotplug-aware services that assume a fully populated
+# /dev at startup.
+
[Unit]
Description=udev Wait for Complete Device Initialization
DefaultDependencies=no
@@ -8,3 +16,6 @@ Before=basic.target
Type=oneshot
RemainAfterExit=yes
ExecStart=@sbindir@/udevadm settle
+
+[Install]
+WantedBy=basic.target