[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#55444: elogind startup race between shepherd and dbus-daemon
From: |
Ludovic Courtès |
Subject: |
bug#55444: elogind startup race between shepherd and dbus-daemon |
Date: |
Wed, 25 May 2022 14:45:50 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) |
Hi,
Maxim Cournoyer <maxim.cournoyer@gmail.com> skribis:
> Ludovic Courtès <ludo@gnu.org> writes:
>
>> Hello!
>>
>> Currently (40a729a0e6f1d660b942241416c1e2c567616d4d), shepherd and
>> dbus-daemon compete to start elogind: shepherd tries to start it
>> eagerly, and dbus-daemon starts it on-demand upon bus activation.
>>
>> Sometimes dbus-daemon wins, and thus shepherd tries a few times to start
>> it anyway, leading to the infamous:
>>
>> elogind is already running as PID 123
>
> Do we have a system test that sometimes reproduce it, or at least the
> above message?
Any system along the lines of gnu/system/examples/desktop.tmpl gets this
message, though usually Xorg starts without any problem.
There’s an elogind system test but it doesn’t catch the problem because
it’s a non-deterministic and rather rare issue.
> I have some branch where I introduce some D-Bus synchronization
> primitives I had started to fix
> https://issues.guix.gnu.org/issue/52051, which ended up being fixed
> differently (bumping the timeout value); perhaps it could be of use
> here.
Hmm I had forgotten about that bug, and I wonder if it’s the same bug I
was seeing, and that in fact the shepherd/dbus-daemon race isn’t the
root cause. The machine where I saw elogind startup failures was
extremely slow to start for other reasons.
Anyhow, getting rid of this race seems like the right thing to do.
Ludo’.