race-free exit-on-idle (redux)

Colin Walters walters at verbum.org
Wed May 13 13:03:04 PDT 2015


Hi,

On Wed, May 13, 2015, at 02:27 PM, Lennart Poettering wrote:

> But it only works for services which do not create
> context objects based on method calls. 

Hmm, that is indeed an important restriction, one not tested by
the current code.

It looks like of the systemd tools that exit-on-idle, networkd is a notable one
that creates object paths.  (That's what you mean by "context objects" right?)

Ah, except `networkctl` doesn't talk DBus at all it looks like (correct?).  So
that's moot until it does.

But obviously a lot of the nontrivial DBus services do create object paths.

It seems[1] that we could close this race by having
sd_notify(false, "STOPPING=0"), and re-claim the bus name?

[1] Handwaving, I admit



More information about the dbus mailing list