rootfs on Intel Matrix Raid hangs or shuts down not clean
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
mdadm (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Xenial |
Fix Released
|
Undecided
|
Unassigned | ||
Zesty |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[Impact]
* In xenial, mdadm-waitclean is an init.d script, and it appears that it doesn't not run late enough. In later releases a systemd-shutdown script is shipped instead. Which results in wait-clean action executed later in the shutdown cycle, having more chances to complete the shutdown with clean/synced RAID array state.
* In xenial, there is no default shutdown initramfs, and therefore mdmon processes are killed before the Intel Matrix RAID / DFF external metadata RAID arrays are stopped. This leads to a full resync upon next assembly. One options is to implement a shutdown initramfs. This is now integrated in he package a mdadm-shutdown.
* In xenial, systemd does not support sendsigs.omit.d, and therefore this results in mdmon process being killed prematurely. Thus keep mdmon processes started in the initramfs running - such that systemd-shutdown can unmount dm held nodes. Ideally systemd on xenial should honor sendsigs.omit.d pid-files, or mdmon processes should be migrated to be udev rules activated - but such a change, imho, is too risky for an sru.
[Bugfix]
* Backport mdadm.shutdown systemd-shutdown script to xenial
* Backport mdadm-shutdown.
[Test Case]
* Switch logging to console, and make it verbose LogLevel=debug LogTarget=console. Perform shutdown and observe that mdadm.shutdown is executed during shutdown.
* Check that the system boots with a clean raid-array state.
* Install system with root on Intel Matrix or DDF raid
* Install dracut-core and activate mdadm-shutdown.
* Reboot
* System should reboot cleanly, with Intel Matrix raid array synced
[Regression Potential]
* On systems that have rootfs on the Intel Matrix / DDF raid (external metadata mdadm raid, i.e. NOT the generic linux raid) initramfs will result in being held up through the lifetime of the boot thus using more steady state RAM. This only affects systems that use Intel Matrix / DDF controllers, and are typically bare-metal servers.
* additional wait-clean shutdown script is quick but has an impact on shutdown.target speed / time to shutdown or reboot.
*
[Other Info]
* Later releases do not use sysv-init script thus this not a direct backport of code from later releases
Roughly corresponds to https:/
description: | updated |
tags: | added: id-59dba43d6e5b35acb9bbee0b |
description: | updated |
summary: |
- improve mdadm imsm integration with systemd + rootfs on Intel Matrix Raid hangs or shuts down not clean |
Changed in mdadm (Ubuntu Xenial): | |
status: | New → In Progress |
Changed in mdadm (Ubuntu Zesty): | |
status: | New → In Progress |
zesty and up have full systmed units & shutdown script integration and are only missing mdadm-shutdown. service, which is not a critical component of the complete fix (not enabled by default). mdadm-shutdown. service is in unstable, to be synced into artful and/or sru'ed into artful & zesty.