Neil, It looks like there is some typo in Assemble.c in mdadm. this patch is against mdadam0.7. using j instead of i in comparing, --- Assemble.c.orig Tue Mar 19 14:37:08 2002 +++ Assemble.c Tue Mar 19 14:37:38 2002 @@ -384,11 +384,11 @@ continue; if (!devices[j].uptodate) continue; - if (devices[j].major != super.disks[j].major || - devices[j].minor != super.disks[j].minor) { + if (devices[j].major != super.disks[i].major || + devices[j].minor != super.disks[i].minor) { change |= 1; - super.disks[j].major = devices[j].major; - super.disks[j].minor = devices[j].minor; + super.disks[i].major = devices[j].major; + super.disks[i].minor = devices[j].minor; } if (devices[j].uptodate && (super.disks[i].state != active_sync)) { Regards Junaid - To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html