[systemd-bugs] [Bug 78311] New: daemon-reload clears bus_name_good bit, reloads kill units with BusName=
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Mon May 5 14:37:13 PDT 2014
https://bugs.freedesktop.org/show_bug.cgi?id=78311
Priority: medium
Bug ID: 78311
Assignee: systemd-bugs at lists.freedesktop.org
Summary: daemon-reload clears bus_name_good bit, reloads kill
units with BusName=
QA Contact: systemd-bugs at lists.freedesktop.org
Severity: normal
Classification: Unclassified
OS: All
Reporter: michael+freedesktop at stapelberg.de
Hardware: Other
Status: NEW
Version: unspecified
Component: general
Product: systemd
This has originally been reported at http://bugs.debian.org/746151
D-Bus-activated units (i.e. having BusName= non-empty) will lose their
bus_name_good bit after daemon-reloading:
x200 ~ $ systemctl dump | perl -nlE 'say if /joss.service:$/ ... /^->
.*.service/' | grep Bus
BusName: org.freedesktop.timedate1
Bus Name Good: yes
x200 ~ $ sudo systemctl daemon-reload
x200 ~ $ systemctl dump | perl -nlE 'say if /joss.service:$/ ... /^->
.*.service/' | grep Bus
BusName: org.freedesktop.timedate1
Bus Name Good: no
When using “systemctl reload” on the service and the control command SIGCHLDs,
service_sigchld_event() will call service_enter_running(s, SERVICE_SUCCESS),
but the following if condition will fail and therefore the last branch is taken
instead of the first one:
if ((main_pid_ok > 0 || (main_pid_ok < 0 && cgroup_ok != 0)) &&
(s->bus_name_good || s->type != SERVICE_DBUS))
service_set_state(s, SERVICE_RUNNING);
else if (s->remain_after_exit)
service_set_state(s, SERVICE_EXITED);
else
service_enter_stop(s, SERVICE_SUCCESS);
I am not sure how to properly fix this, which is why I’m creating this report.
Thanks in advance for any fixes :).
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/systemd-bugs/attachments/20140505/1d766aa0/attachment.html>
More information about the systemd-bugs
mailing list