Skip to content

Commit

Permalink
fix(multipath): drop ExecStop= setting from service unit
Browse files Browse the repository at this point in the history
This removes the 'ExecStop=' field from `multipathd.service`.
Sometimes CI runs do encounter a failure related to this
service in initrd, which seems to be stemming from a socket
I/O race between the client and the server on shutdown.
It looks like the client (`multipathd shutdown`) can lose the race,
hit an I/O error, and cause the whole unit to fail (even if the server
managed to shutdown properly already).

Notably, the upstream unit does not have such stop command
as the daemon can already perform a graceful exit through
its signal handler.

As such, this commit partially re-aligns the two units,
trying to sidestep any of the existing races.

Refs:
 * coreos/fedora-coreos-tracker#803
 * https://github.com/opensvc/multipath-tools/blob/0.8.7/multipathd/multipathd.service
  • Loading branch information
lucab authored and johannbg committed Sep 23, 2021
1 parent 10ed204 commit 9491e59
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions modules.d/90multipath/multipathd.service
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@ ConditionKernelCommandLine=!rd_NO_MULTIPATH
ConditionKernelCommandLine=!multipath=off

[Service]
Type=simple
Type=notify
NotifyAccess=main
ExecStartPre=-/sbin/modprobe dm-multipath
ExecStart=/sbin/multipathd -s -d
ExecReload=/sbin/multipathd reconfigure
ExecStop=/sbin/multipathd shutdown

[Install]
WantedBy=sysinit.target

0 comments on commit 9491e59

Please sign in to comment.