FS#78134 - [systemd] 253.3-2 hangs on reloading device manager configuration

Attached to Project: Arch Linux
Opened by Dev S (dev) - Thursday, 06 April 2023, 09:06 GMT
Last edited by Christian Hesse (eworm) - Monday, 10 April 2023, 21:37 GMT
Task Type Bug Report
Category Packages: Testing
Status Closed
Assigned To Christian Hesse (eworm)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 3
Private No

Details

Description:
systemd 253.3-2 installation hangs on reloading device manager configuration

Additional info:
* package version(s)
253.3-2

Steps to reproduce:

# pacman -Syu
:: Synchronizing package databases...
custom is up to date
testing 18.9 KiB 304 KiB/s 00:00 [#############################################################################] 100%
core is up to date
extra is up to date
community-testing is up to date
community is up to date
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...

Packages (3) systemd-253.3-2 systemd-libs-253.3-2 systemd-sysvcompat-253.3-2

Total Download Size: 8.23 MiB
Total Installed Size: 30.80 MiB
Net Upgrade Size: 0.00 MiB

:: Proceed with installation? [Y/n]
:: Retrieving packages...
systemd-253.3-2-x86_64 7.2 MiB 39.7 MiB/s 00:00 [#############################################################################] 100%
systemd-libs-253.3-2-x86_64 1016.9 KiB 43.2 MiB/s 00:00 [#############################################################################] 100%
systemd-sysvcompat-253.3-2-x86_64 5.9 KiB 423 KiB/s 00:00 [#############################################################################] 100%
Total (3/3) 8.2 MiB 31.5 MiB/s 00:00 [#############################################################################] 100%
(3/3) checking keys in keyring [#############################################################################] 100%
(3/3) checking package integrity [#############################################################################] 100%
(3/3) loading package files [#############################################################################] 100%
(3/3) checking for file conflicts [#############################################################################] 100%
(3/3) checking available disk space [#############################################################################] 100%
:: Processing package changes...
(1/3) upgrading systemd-libs [#############################################################################] 100%
(2/3) upgrading systemd [#############################################################################] 100%
(3/3) upgrading systemd-sysvcompat [#############################################################################] 100%
:: Running post-transaction hooks...
( 1/10) Creating system user accounts...
( 2/10) Updating journal message catalog...
( 3/10) Reloading system manager configuration...
( 4/10) Updating udev hardware database...
( 5/10) Applying kernel sysctl settings...
( 6/10) Creating temporary files...
( 7/10) Reloading device manager configuration...
This task depends upon

Closed by  Christian Hesse (eworm)
Monday, 10 April 2023, 21:37 GMT
Reason for closing:  Fixed
Additional comments about closing:  systemd 253.3-3
Comment by Christian Heusel (gromit) - Thursday, 06 April 2023, 09:23 GMT
Worked fine for me ... Do you have any logs on what udev rule could be hanging?
Because it is most likely this change which introduces the `--settle` option:

https://github.com/archlinux/svntogit-packages/commit/063cdc2311f307f43dadefcf961532f622a18e17

> -w --settle Wait for the triggered events to complete

Maybe also: Do you have any custom udev rules?
Comment by Henrique Custódio (henriqueffc) - Thursday, 06 April 2023, 12:09 GMT
Happened to me too. I have a udev rule set up for the system (I/O schedulers). I had to use Ctrl + C for the update to continue.
Comment by Dev S (dev) - Thursday, 06 April 2023, 12:38 GMT
I do not have any custom udev rules.

This almost always hangs indefinitely for me:

# SYSTEMD_LOG_LEVEL=debug udevadm trigger --settle
sd-device-monitor(n/a): Failed to get the received message size: No buffer space available
^C

Always with that error message.

I can make it not hang most of the time when I test it repeatedly like this:

# udevadm trigger --verbose --dry-run | shuf -n99 | SYSTEMD_LOG_LEVEL=debug xargs udevadm trigger --settle

Then I only occasionally get that same error message, before it hangs:
sd-device-monitor(n/a): Failed to get the received message size: No buffer space available

Maybe a bug in systemd?
Comment by Christian Hesse (eworm) - Friday, 07 April 2023, 20:58 GMT
Anybody can provide a trace of this?

Does it make a difference to run `udevadm settle` in a separate command?
Comment by Toolybird (Toolybird) - Saturday, 08 April 2023, 21:21 GMT
Dupe  FS#78148 
Comment by Dev S (dev) - Sunday, 09 April 2023, 10:13 GMT
Trace attached.

No hangs when running `udevadm settle` separately.
   trace.log (12.2 KiB)
Comment by Christian Hesse (eworm) - Monday, 10 April 2023, 18:07 GMT
So the issue is fixed with systemd 253.3-3?
Comment by Dev S (dev) - Monday, 10 April 2023, 18:39 GMT
Yes, 253.3-3 does fix it.

Loading...