Bug#684708: mdadm: support external metadata arrays correctly

Michael Tokarev mjt at tls.msk.ru
Tue Oct 2 19:40:32 UTC 2012


On 02.10.2012 17:20, Miquel van Smoorenburg wrote:
> Package: mdadm
> Version: 3.2.5-1
> 
> [version 2 of the patch]
> 
> The initramfs hook supplied by mdadm doesn't install mdmon. Also, mdmon
> is not included in the .udeb for the installer.
> 
> This means that if you have an array with external metadata (ddf or,
> more widely used, imsm - Intel Matrix Raid) that it will come up
> readonly. This causes the installer to hang or the system not being
> able to boot if root is on that array.
> 
> The attached patch does the following:
> 
> - it makes sure mdadm is included in the initramfs and the udeb package
> - it adds a mdadm-waitidle script that runs just before reboot/halt. For
>   arrays that are still running, it calls mdadm --wait-clean to wait
>   for the array to go idle.  This is needed so that the array is marked
>   clean, otherwise it will start to resync at the next boot.
> - it adds a few lines to /etc/init.d/mdadm for the start and stop actions:
>   o start: if a mdmon pidfile is found in /run/mdadm, restart mdmon
>   o stop: link pidfiles of mdmon processes into /run/sendsigs.omit.d,
>     and make sure that happens before sendsigs runs.
> - RUNDIR in /etc/init.d/mdadm is set to /run. This is sure to be ok:
>   mdadm itself is already compiled with rundir hardcoded to /run.
> 
> Note that I've made sure that this actually doesn't do /anything/
> if you do not have running MD arrays with external metadata. Iow,
> this should not break anything, or cause regressions.
> 
> I have added support for installation on Intel Matrix raid (imsm)
> arrays using mdadm to d-i, and I'll be sending patches to the debian-boot
> list soon. Please consider this patch for inclusion in wheezy.

I think this is much more reasonable now than the previous version.
I'll give it a very quick try, but I don't have any hardware currently
where I can test the Real Thing unfortunately, so I'll verify only if
it does not break existing stuff :)  But it already looks rather good.

The next thing is to convince the release team that his is indeed a
good thing, too :)

Thank you very much!

/mjt



More information about the pkg-mdadm-devel mailing list