[systemd-devel] ExecStop IPC over same socket used for activation?

Lennart Poettering lennart at poettering.net
Wed Feb 11 12:29:29 PST 2015


On Thu, 05.02.15 11:33, Chris Leech (cleech at redhat.com) wrote:

> Hi,
> 
> Lee Duncan and I were looking at a situation with iscsid where a
> systemctl stop command would sometimes print a job canceled message, and
> the service would be immediately restarted.
> 
> The problem seems to be that the ExecStop command is sending a shutdown
> request over an IPC socket, the same IPC socket used for socket
> activation.  I've captured debug logging of the failure, and it seems to
> show systemd moving the socket unit back to a listening state before the
> ExecStop command is run.  The shutdown message then triggers a start
> job, which cancels the pending stop job, the daemon receives the message
> and exits, but is then restarted right away.
> 
> This doesn't seem like too crazy of a way to shut things down, should
> the coordination between the service and the socket unit be waiting for
> for the ExecStop to complete before monitoring for socket activation
> again?

Ineed, analysis seems correct. I now made this change:

http://lists.freedesktop.org/archives/systemd-devel/2015-February/028058.html

Didn't test it though, please test if this fixes things for you!

Thanks,

Lennart

-- 
Lennart Poettering, Red Hat


More information about the systemd-devel mailing list