Ubuntu server kernel, uname -r: 2.6.20-16-server
Setup description: 2 identical S-ATA disks, same partition table:
sd[ab]1: Linux raid autodetect, 5G, raid1, / (EXT3), device md0
sd[ab]2: Linux raid autodetect, 1G, raid1, swap, device md1
sd[ab]3: Linux raid autodetect, 3G, raid1, /home, device md2
Booting with both sda (S-ATA primary master) and sdb (S-ATA secondary master) inside the system; transcription of "dmesg | grep md"
Kernel command line: root=/dev/md0 ro splash
md: raid1 personality registered for level 1
ata1: SATA max UDMA/133 cmd 0x000101f0 ctl 0x000103f6 bmdma 0x0001f800 irq 14
ata2: SATA max UDMA/133 cmd 0x00010170 ctl 0x00010376 bmdma 0x0001f808 irq 15
md: md0 stopped.
md: bind<sdb1>
md: bind<sda1>
raid1: raid set md0 active with 2 out of 2 mirrors
md: md1 stopped.
md: md2 stopped.
md: md1 stopped.
md: bind<sdb2>
md: bind<sda2>
raid1: raid set md1 active with 2 out of 2 mirrors
md: md2 stopped.
md: bind<sdb3>
md: bind<sda3>
raid1: raid set md2 active with 2 out of 2 mirrors
EXT3 FS on md0, internal journal
EXT3 FS on md2, internal journal
Everything is fine in this setup.
However, if for simulating a failure I boot with sdb removed, this is what I get in the kernel:
md: md0 stopped.
md: bind<sda1>
md: md1 stopped.
md: md2 stopped.
md: md0 stopped.
md: unbind<sda1>
md: export_rdev(sda1)
md: bind<sda1>
md: md1 stopped.
md: bind<sda2>
md: md2 stopped.
md: bind<sda3>
The bind<sda3> message is the last one for quite a while; after I get dropped to an (initramfs) prompt, cat /dev/mdstat shows the 3 arrays as "inactive"