# VERIFICATION

Note: As a reminder, the issue here is that there's a race condition
between any DBUS service and systemctl daemon-reload, where systemd adds
the DBUS filter (AddMatch) that looks for a name change when that has
already happened. I'll be using systemd-logind as the DBUS service in my
reproducer.

Using the following reproducer:

for i in $(seq 1 1000); do echo $i; ssh $SERVER 'sudo systemctl daemon-
reload & sudo systemctl restart systemd-logind'; done

- With systemd=237-3ubuntu10.42 (-updates), after a few runs, systemd-logind is 
stuck as a running job and ssh is not responsive. DBUS messages[1] show that 
the AddMatch filter is set by systemd after systemd-logind has acquired its 
final name (systemd-login1)
- With systemd=237-3ubuntu10.43 (-proposed), systemd-logind does not get stuck 
and everything continues to work. In a scenario[2] where the systemd DBUS 
AddMatch message arrives after the final systemd-logind NameOwnerChanged, 
systemd is able to catch up thanks to the GetNameOwner introduced in the patch

[1] https://pastebin.ubuntu.com/p/NxRNX9bwCP/
[2] https://pastebin.ubuntu.com/p/jpKpW3g2bK/

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1896614

Title:
  Race condition when starting dbus services

To manage notifications about this bug go to:
https://bugs.launchpad.net/systemd/+bug/1896614/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to