Web lists-archives.com

Re: udev (without systemd) fails to find devices




On Wed Sep 12 2018 at 10:10 PM +0200, Sven Joachim wrote:
> On 2018-09-11 19:05 -0700, Bill Brelsford wrote:
> 
> > I recently upgraded the sid installation on an i386 machine.  With
> > udev upgraded to 239-8, many devices are no longer detected during
> > boot, e.g. usb, network card, video, audio.  I also have a
> > not-upgraded buster partition on the same machine -- a large
> > portion of its dmesg output is simply missing from sid's dmesg.
> 
> Maybe udevd has not even been started then.  What does
> "/usr/sbin/service udev status" say?

It's running.

> > The kernel was also upgraded (to 4.18.0-1), but booting the old
> > kernel (4.17.0-3) also fails.  So it appears to me to be a bug in
> > udev, possibly connected to my not running systemd.  I haven't
> > seen that anyone else is affected, so wanted to check here before
> > submitting a bug report.  Anyone else?  Any other ideas?
> 
> The udev init script has seen some changes in 239-8.  Offhand the only
> one which could explain the problem is that systemd-udevd is now started
> via start-stop-deamon[1].  I don't have any systemd-less system to test
> myself, though.

That's where the problem is (thanks, Sven!).  Appears to be a race
condition due to --background; it lets "udevadm trigger" start too
soon.  Adding a short sleep makes it work:

    if start-stop-daemon --start --name $NAME --user root --quiet \
        --pidfile $PIDFILE --exec $DAEMON --background --make-pidfile; then
	sleep 2

I'll plan to submit a bug report tomorrow..

Regards..  Bill