]> git.ipfire.org Git - thirdparty/plymouth.git/commitdiff
systemd: more udev clean ups
authorRay Strode <rstrode@redhat.com>
Wed, 20 Jun 2012 15:57:06 +0000 (11:57 -0400)
committerRay Strode <rstrode@redhat.com>
Wed, 20 Jun 2012 15:57:06 +0000 (11:57 -0400)
The udev trigger calls that are there, are actually
spurious.  udev will coldplug those subsystems at
start up anyway, so doing it explicitly is wrong.

This commit drops those trigger calls.

What does matter is the udevadm settle call. It's
what makes things block until the graphics driver
is loaded.

udevadm settle is a big sledgehammer, though. It blocks
until all the triggered events (even stuff unrelated to
graphics) are finished.

This commit adds a --exit-if-exists argument to udevadm settle,
so it will bail early as soon as the graphics devices
are up.

systemd-units/plymouth-start.service.in

index 3fc4a7f4114ccc04f399f376a0fd14b533933726..e49b5f0377572d819ae2a2a4d5689ac2dadb8f0c 100644 (file)
@@ -9,5 +9,5 @@ ConditionPathExists=!@plymouthruntimedir@/pid
 
 [Service]
 ExecStart=@PLYMOUTH_DAEMON_DIR@/plymouthd --mode=boot --pid-file=@plymouthruntimedir@/pid --attach-to-session
-ExecStartPost=-/bin/udevadm trigger --action=add --subsystem-match=graphics --subsystem-match=drm --subsystem-match=tty ; -/bin/udevadm settle --timeout=30 ; -@PLYMOUTH_CLIENT_DIR@/plymouth show-splash
+ExecStartPost=-/bin/udevadm settle --timeout=30 --exit-if-exists=/sys/class/drm/card0/dev;-/bin/udevadm settle --timeout=30 --exit-if-exists=/sys/class/graphics/fb0/dev; -@PLYMOUTH_CLIENT_DIR@/plymouth show-splash
 Type=forking