mdmon@.service: Change type of process start-up to 'forking'.
Mdadm does not wait enough time when mdmon is started by systemd. It causes various problems with behaviour of a RAID volume with external metadata. For example: mdmon does not update a value of checkpoint during migration and second RAID5 volume is read-only after reboot done during container reshape (both problems occur with IMSM matadata). If a type of process start-up is changed to 'forking', systemctl will wait until mdmon (parent) process exits after calling fork. This way mdmon will always be fully initialized after start_mdmon and these problems will not occur. In this case it is recommended to add a path to PIDFile, so that systemd does not have to guess a PID of the mdmon process. Signed-off-by: Pawel Baldysiak <pawel.baldysiak@intel.com> Reviewed-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Reviewed-by: Lukasz Dorau <lukasz.dorau@intel.com> Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
parent
56bbc588f7
commit
2167de78aa
|
@ -14,5 +14,7 @@ Before=initrd-switch-root.target
|
|||
# mdmon should never complain due to lack of a platform,
|
||||
# that is mdadm's job if at all.
|
||||
Environment=IMSM_NO_PLATFORM=1
|
||||
ExecStart=/sbin/mdmon --foreground %I
|
||||
ExecStart=/sbin/mdmon %I
|
||||
Type=forking
|
||||
PIDFile=/run/mdadm/%I.pid
|
||||
KillMode=none
|
||||
|
|
Loading…
Reference in New Issue