http://bugzilla.suse.com/show_bug.cgi?id=1058028
http://bugzilla.suse.com/show_bug.cgi?id=1058028#c15
Shivasharan Srikanteshwara
(In reply to Shivasharan Srikanteshwara from comment #13)
I have attached the requested logs, but there is nothing related to udev-settle service in the logs. Do I need to enable the service explicitly after OS install? How does this service get triggered? I can see multipathd.service and dmraid-activation.service have lines that refer to systemd-udev-settle.service. But both multipathd and dmraid are not enabled.
linux-so07:/usr/lib/systemd # grep -R "udev-settle" * system/multipathd.service:Wants=systemd-udev-trigger.service systemd-udev-settle.service system/multipathd.service:After=multipathd.socket systemd-udev-trigger.service systemd-udev-settle.service system/dmraid-activation.service:After=systemd-udev-settle.service system/dmraid-activation.service:Wants=systemd-udev-settle.service
Thanks.
Indeed systemd-udev-settle.service is only triggered at certain conditions. That doesn't look correct, it should be triggered by systemd-udev-trigger.service. Could you please do the following changes in systemd-udev-trigger.service:
--> --- /usr/lib/systemd/system/systemd-udev-trigger.service.orig 2017-09-29 10:10:08.423500663 +0200 +++ /usr/lib/systemd/system/systemd-udev-trigger.service 2017-09-29 10:10:24.143500663 +0200 @@ -9,7 +9,7 @@ Description=udev Coldplug all Devices Documentation=man:udev(7) man:systemd-udevd.service(8) DefaultDependencies=no -Wants=systemd-udevd.service +Wants=systemd-udevd.service systemd-udev-settle.service After=systemd-udevd-kernel.socket systemd-udevd-control.socket systemd-hwdb-update.service Before=sysinit.target ConditionPathIsReadWrite=/sys --<
afterwards run mkinitrd and check whether the issue still appears after reboot?
This does alleviate my problem a bit but does not solve completely. The udev-settle service has a default timeout of 120secs. So with this the tolerance increases from 30secs to about 150seconds (120 secs for udev-settle to timeout + earlier 30secs for systemd-udevd to kill all child processes). Let me know if you require the logs with these changes.
From the various experiments I have been running, if "KillMode=mixed" option in systemd-udevd.service file is removed the problem goes away completely... Even without the udev-settle changes. With KillMode=mixed, systemd sends a SIGKILL after 30secs timeout. But the default behaviour is to send a SIGTERM after 30seconds. Looks like the SIGKILL is causing all the trouble here. Is the KillMode option required for systemd-udevd?
-- You are receiving this mail because: You are on the CC list for the bug.