Is this the correct approach?  Even the systemd-udev-settle.service man pages recommends not using its service.  Were the kernel modules really not loaded when rngd started?  Or is the original problem just a matter of waiting for sufficient entropy?

On Fri, Sep 17, 2021 at 4:08 AM Claudius Heine <ch@denx.de> wrote:
rngd needs to start after `systemd-udev-settle` in order for the kernel
modules of the random source hardware to be loaded before it is started.

However, since the `rngd.service` does not require or want
`systemd-udev-settle.service` it might not be scheduled for start and
the `After=systemd-udev-settle.service` there has no effect.

Adding `Wants=systemd-udev-settle.service` provides a weak requirement
to it, so that the `rngd` is started after it, if possible.

Signed-off-by: Claudius Heine <ch@denx.de>
---

Hi,

this is a fix, which should probably be backported to the maintained releases.

regards,
Claudius

 meta/recipes-support/rng-tools/rng-tools/rngd.service | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-support/rng-tools/rng-tools/rngd.service b/meta/recipes-support/rng-tools/rng-tools/rngd.service
index 0559b97991..568686e80e 100644
--- a/meta/recipes-support/rng-tools/rng-tools/rngd.service
+++ b/meta/recipes-support/rng-tools/rng-tools/rngd.service
@@ -3,6 +3,7 @@ Description=Hardware RNG Entropy Gatherer Daemon
 DefaultDependencies=no
 After=systemd-udev-settle.service
 Before=sysinit.target shutdown.target
+Wants=systemd-udev-settle.service
 Conflicts=shutdown.target

 [Service]
--
2.33.0


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#156129): https://lists.openembedded.org/g/openembedded-core/message/156129
Mute This Topic: https://lists.openembedded.org/mt/85671578/4454381
Group Owner: openembedded-core+owner@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [bkylerussell@gmail.com]
-=-=-=-=-=-=-=-=-=-=-=-