Wait timeout for systemd-udevd worker process is too short
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
systemd (Ubuntu) |
Expired
|
Undecided
|
Unassigned |
Bug Description
Coming from https:/
Commit 786235ee in the upstream kernel made kthread_create() return
immediately upon SIGKILL. On several machines, device initialization
phase takes more than 30 seconds before kthread_create() is called.
Since systemd-udevd unconditionally sends SIGKILL upon hardcoded 30
seconds timeout, boot is failing upon such machines. The conclusion
of LKML discussion seems that we should fix systemd-udevd side
rather than fixing kthread_create() side because hardcoded 30 seconds
timeout is considered as a bug of systemd. Therefore, please consider
allowing configurable (or at least much longer) timeout for
systemd-udevd worker process.
Can you please explain in more detail (perhaps with an example) how the kthread_create() change affects the killing of RUN/IMPORT rules? udev has always behaved that way to guard against hanging RUN programs. The boot can take much longer than 30 seconds, just every single RUN action should be much, much faster (otherwise it's written in a wrong way). In fact I consider 30 seconds way too overgenerous.
Thanks!