[systemd-devel] Reliably waiting for udevd to finish processing triggered events

Lennart Poettering lennart at poettering.net
Mon Mar 9 09:25:00 PDT 2015

On Mon, 09.03.15 06:49, Daniel Drake (drake at endlessm.com) wrote:

> Hi,
> On Sun, Mar 8, 2015 at 3:50 PM, Lennart Poettering
> <lennart at poettering.net> wrote:
> > On Fri, 06.03.15 14:22, Daniel Drake (drake at endlessm.com) wrote:
> > To my knowledge newer versions don't do this anymore and actively
> > watch drm devices coming.
> I'm describing the behaviour of the newer version here. The issue is
> current. It does watch drm devices but if it gets indication that all
> udev events have been processed and still there is no usable drm
> device, it will give up on drm and launch into text mode.

That's not reliable, and plymouth shouldn't do that. Many modern
busses have no time limit on probing, notably USB. An empty queue of
udev is by no means indication that no graphical device will be found.

Plymouth should subscribe to devices coming, and make use of them if
they appear. THen, if a timeout is reched it can do fallback text mode
stuff. But this must be bound to a timeout, attaching this to udev is
necessarily racy.


Lennart Poettering, Red Hat

More information about the systemd-devel mailing list