Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
blinkd: Do not wait for service startup during boot
Fixes #54 When systemd-udev-trigger.service is started, it uses `/bin/udevadm settle` to trigger udevd to process the rules for discovered devices and waits until this is done. The rules file `51-blink.rules` asks udevd to run `systemctl start blinkd`. By default, `systemctl start` waits until the target service is started. `blinkd.service` has a `After=` dependency on `sysinit.target` (via `DefaultDependencies`) and waits for that. `sysinit.target` has a `After=` dependency on `systemd-udev-trigger.service` and waits for that. So we have a deadlock. Prevent deadlock by adding `--no-block` to `systemctl start`. Note 1: This fix will prevent the deadlock. However, blinkd will not start on boot currently, because it depends on python3 from a /pkg path and this is not available yet. Note 2: Same fix should be applied to `/etc/udev/rules.d/51-barcodereader.rules`
- Loading branch information