Bug#774430: systemd: service makes as not reloadable

Michael Biebl biebl at debian.org
Wed Dec 21 23:49:38 GMT 2016


Am 02.01.2015 um 19:11 schrieb Tollef Fog Heen:
	> minkus% sudo systemctl show syslog-ng.service | cat
...
> CanStart=no
> CanStop=no
> CanReload=no
> CanIsolate=no
> StopWhenUnneeded=no
> RefuseManualStart=no
> RefuseManualStop=no
> AllowIsolate=no
> DefaultDependencies=no
> OnFailureJobMode=replace
> IgnoreOnIsolate=no
> IgnoreOnSnapshot=no
> NeedDaemonReload=no
> JobTimeoutUSec=0
> ConditionResult=no
> ConditionTimestamp=ma. 2014-12-22 10:17:04 UTC
> ConditionTimestampMonotonic=14254183
> Transient=no


Something I just noticed: All boolean properties are no, not just CanReload.
And checking on minkus, this seems to happen for other services as well,
like

$ systemctl show ssh.service | grep no$
PermissionsStartOnly=no
RootDirectoryStartOnly=no
RemainAfterExit=no
GuessMainPID=no
CPUAccounting=no
BlockIOAccounting=no
MemoryAccounting=no
CPUSchedulingResetOnFork=no
NonBlocking=no
TTYReset=no
TTYVHangup=no
TTYVTDisallocate=no
SyslogLevelPrefix=no
PrivateTmp=no
PrivateNetwork=no
PrivateDevices=no
ProtectHome=no
ProtectSystem=no
SameProcessGroup=no
IgnoreSIGPIPE=no
NoNewPrivileges=no
SendSIGKILL=no
SendSIGHUP=no
CanStart=no
CanStop=no
CanReload=no
CanIsolate=no
StopWhenUnneeded=no
RefuseManualStart=no
RefuseManualStop=no
AllowIsolate=no
DefaultDependencies=no
IgnoreOnIsolate=no
IgnoreOnSnapshot=no
NeedDaemonReload=no
ConditionResult=no
Transient=no

vs

$ systemctl show ssh.service | grep yes$
<empty>

So, this seems to be an issue which lies deeper.


I wonder if this is arch specific and we have some arch specific
problems when dealing with boolean data.

Other mips64 porterboxes, like eller, show the same behaviour.
Interestingly, the same on a powerpc porterbox (partch).

I've CCed the mips porter mailing list. Maybe they have an idea.


Digging deeper, I wonder whether this is just a presentation issue, i.e.
the output of systemctl show simply being wrong but the internal
representation actually being correct.
When checking systemd-analyze dump, it seems to show the correct values:

$ systemd-analyze dump
→ GuessMainPid: yes

$ systemctl show -p  GuessMainPID syslog-ng.service
GuessMainPID=no

Tollef, can you run
systemctl reload syslog-ng.service
and see if that works?

If so, we probably need to concentrate on "show". Maybe there is some
formatting issue and we cast boolean values wrong when using printf.

Regards,
Michael
-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-systemd-maintainers/attachments/20161222/d60d6af6/attachment.sig>


More information about the Pkg-systemd-maintainers mailing list