Re: Kernel 2.6.17 and RAID5 Grow Problem (critical section backup)

From: Neil Brown
Date: Mon Jul 17 2006 - 20:20:36 EST

On Tuesday July 11, petr@xxxxxxxx wrote:
> >>> Hm, what's superblock 0.91? It is not mentioned in mdadm.8.
> >>>
> >> Not sure, the block version perhaps?
> >>
> > Well yes of course, but what characteristics? The manual only lists
> > 0, 0.90, default
> > 1, 1.0, 1.1, 1.2
> > No 0.91 :(
> AFAICR superblock version gets raised by 0.01 for the duration of
> reshape, so that non-reshape aware kernels do not try to assemble it
> (and cause data corruption).

Exactly. The following will be in the next mdadm - unless someone
wants to re-write it for me using shorter sentences :-)


diff .prev/md.4 ./md.4
--- .prev/md.4 2006-06-20 10:01:17.000000000 +1000
+++ ./md.4 2006-07-18 10:14:47.000000000 +1000
@@ -74,6 +74,14 @@ UUID
a 128 bit Universally Unique Identifier that identifies the array that
this device is part of.

+When a version 0.90 array is being reshaped (e.g. adding extra devices
+to a RAID5), the version number is temporarily set to 0.91. This
+ensures that if the reshape process is stopped in the middle (e.g. by
+a system crash) and the machine boots into an older kernel that does
+not support reshaping, then the array will not be assembled (which
+would cause data corruption) but will be left untouched until a kernel
+that can complete the reshape processes is used.
While it is usually best to create arrays with superblocks so that
they can be assembled reliably, there are some circumstances where an
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at