Comment 67 for bug 120375

Revision history for this message
Dustin Kirkland  (kirkland) wrote :

I have a pair of debdiffs which will be posted in the following two messages. One for mdadm, and a second for initramfs-tools.

The mdadm patch supports an optional kernel parameter, which can be any of:
 * bootdegraded
 * bootdegraded=true
 * bootdegraded=yes
 * bootdegrade=1

If a RAID device containing the root filesystem fails to start, the mdadm failure hooks will eventually run. When they do, the kernel command line will be checked for a valid 'bootdegraded' flag. If it is set affirmatively, it will run:
 * mdadm --assemble --scan --run
which will attempt to start the array in a degraded mode.

I have also changed the printed error message to direct the user to use "bootdegraded=true".

----

For the failure hooks to execute before the init scripts bail out, I have a patch to initramfs-tools.

Here, I split out the mountroot-fail.hooks code to its own independently callable function, call_failure_hooks(). And the panic() function conditionally invokes call_failure_hooks().

Furthermore, the local script invokes the call_failure_hooks() function *before* it gives up on finding the root device.

I have packages available for testing in my PPA.
 * https://launchpad.net/~kirkland/+archive

:-Dustin