Kernel 2.6.23.9 + mdadm 2.6.2-2 + Auto rebuild RAID1?

5 messages, 2 authors, 2007-12-01 · open the first message on its own page

Kernel 2.6.23.9 + mdadm 2.6.2-2 + Auto rebuild RAID1?

From: Justin Piszcz <hidden>
Date: 2007-12-01 11:19:37

Quick question,

Setup a new machine last night with two raptor 150 disks.  Setup RAID1 as 
I do everywhere else, 0.90.03 superblocks (in order to be compatible with 
LILO, if you use 1.x superblocks with LILO you can't boot), and then:

/dev/sda1+sdb1 <-> /dev/md0 <-> swap
/dev/sda2+sdb2 <-> /dev/md1 <-> /boot (ext3)
/dev/sda3+sdb3 <-> /dev/md2 <-> / (xfs)

All works fine, no issues...

Quick question though, I turned off the machine, disconnected /dev/sda 
from the machine, boot from /dev/sdb, no problems, shows as degraded 
RAID1.  Turn the machine off.  Re-attach the first drive.  When I boot my 
first partition either re-synced by itself or it was not degraded, was is 
this?

So two questions:

1) If it rebuilt by itself, how come it only rebuilt /dev/md0?
2) If it did not rebuild, is it because the kernel knows it does not need 
to re-calculate parity etc for swap?

I had to:

mdadm /dev/md1 -a /dev/sda2
and
mdadm /dev/md2 -a /dev/sda3

To rebuild the /boot and /, which worked fine, I am just curious though 
why it works like this, I figured it would be all or nothing.

More info:

Not using ANY initramfs/initrd images, everything is compiled into 1 
kernel image (makes things MUCH simpler and the expected device layout etc 
is always the same, unlike initrd/etc).

Justin.

Re: Kernel 2.6.23.9 + mdadm 2.6.2-2 + Auto rebuild RAID1?

From: Jan Engelhardt <hidden>
Date: 2007-12-01 12:10:38

On Dec 1 2007 06:19, Justin Piszcz wrote:
RAID1, 0.90.03 superblocks (in order to be compatible with LILO, if
you use 1.x superblocks with LILO you can't boot)
Says who? (Don't use LILO ;-)
, and then:

/dev/sda1+sdb1 <-> /dev/md0 <-> swap
/dev/sda2+sdb2 <-> /dev/md1 <-> /boot (ext3)
/dev/sda3+sdb3 <-> /dev/md2 <-> / (xfs)

All works fine, no issues...

Quick question though, I turned off the machine, disconnected /dev/sda 
from the machine, boot from /dev/sdb, no problems, shows as degraded 
RAID1.  Turn the machine off.  Re-attach the first drive.  When I boot 
my first partition either re-synced by itself or it was not degraded, 
was is this?
If md0 was not touched (written to) after you disconnected sda, it also 
should not be in a degraded state.
So two questions:

1) If it rebuilt by itself, how come it only rebuilt /dev/md0?
So md1/md2 was NOT rebuilt?
2) If it did not rebuild, is it because the kernel knows it does not 
   need to re-calculate parity etc for swap?
Kernel does not know what's inside an md usually. And it should not 
try to be smart.
I had to:

mdadm /dev/md1 -a /dev/sda2
and
mdadm /dev/md2 -a /dev/sda3

To rebuild the /boot and /, which worked fine, I am just curious 
though why it works like this, I figured it would be all or nothing.
Devices are not automatically readded. Who knows, maybe you inserted a 
different disk into sda which you don't want to be overwritten.
More info:

Not using ANY initramfs/initrd images, everything is compiled into 1 
kernel image (makes things MUCH simpler and the expected device layout 
etc is always the same, unlike initrd/etc).
My expected device layout is also always the same, _with_ initrd. Why? 
Simply because mdadm.conf is copied to the initrd, and mdadm will 
use your defined order.

Re: Kernel 2.6.23.9 + mdadm 2.6.2-2 + Auto rebuild RAID1?

From: Justin Piszcz <hidden>
Date: 2007-12-01 12:13:19


On Sat, 1 Dec 2007, Jan Engelhardt wrote:
On Dec 1 2007 06:19, Justin Piszcz wrote:
quoted
RAID1, 0.90.03 superblocks (in order to be compatible with LILO, if
you use 1.x superblocks with LILO you can't boot)
Says who? (Don't use LILO ;-)
I like LILO :)
quoted
, and then:

/dev/sda1+sdb1 <-> /dev/md0 <-> swap
/dev/sda2+sdb2 <-> /dev/md1 <-> /boot (ext3)
/dev/sda3+sdb3 <-> /dev/md2 <-> / (xfs)

All works fine, no issues...

Quick question though, I turned off the machine, disconnected /dev/sda
from the machine, boot from /dev/sdb, no problems, shows as degraded
RAID1.  Turn the machine off.  Re-attach the first drive.  When I boot
my first partition either re-synced by itself or it was not degraded,
was is this?
If md0 was not touched (written to) after you disconnected sda, it also
should not be in a degraded state.
quoted
So two questions:

1) If it rebuilt by itself, how come it only rebuilt /dev/md0?
So md1/md2 was NOT rebuilt?
Correct.
quoted
2) If it did not rebuild, is it because the kernel knows it does not
   need to re-calculate parity etc for swap?
Kernel does not know what's inside an md usually. And it should not
try to be smart.
Ok.
quoted
I had to:

mdadm /dev/md1 -a /dev/sda2
and
mdadm /dev/md2 -a /dev/sda3

To rebuild the /boot and /, which worked fine, I am just curious
though why it works like this, I figured it would be all or nothing.
Devices are not automatically readded. Who knows, maybe you inserted a
different disk into sda which you don't want to be overwritten.
Makes sense, I just wanted to confirm that it was normal..
quoted
More info:

Not using ANY initramfs/initrd images, everything is compiled into 1
kernel image (makes things MUCH simpler and the expected device layout
etc is always the same, unlike initrd/etc).
My expected device layout is also always the same, _with_ initrd. Why?
Simply because mdadm.conf is copied to the initrd, and mdadm will
use your defined order.
That is another way as well, people seem to be divided.

Re: Kernel 2.6.23.9 + mdadm 2.6.2-2 + Auto rebuild RAID1?

From: Jan Engelhardt <hidden>
Date: 2007-12-01 12:17:58

On Dec 1 2007 07:12, Justin Piszcz wrote:
On Sat, 1 Dec 2007, Jan Engelhardt wrote:
quoted
On Dec 1 2007 06:19, Justin Piszcz wrote:
quoted
RAID1, 0.90.03 superblocks (in order to be compatible with LILO, if
you use 1.x superblocks with LILO you can't boot)
Says who? (Don't use LILO ;-)
I like LILO :)
LILO cares much less about disk layout / filesystems than GRUB does,
so I would have expected LILO to cope with all sorts of superblocks.
OTOH I would suspect GRUB to only handle 0.90 and 1.0, where the MDSB
is at the end of the disk <=> the filesystem SB is at the very beginning.
quoted
quoted
So two questions:

1) If it rebuilt by itself, how come it only rebuilt /dev/md0?
So md1/md2 was NOT rebuilt?
Correct.
Well it should, after they are readded using -a.
If they still don't, then perhaps another resync is in progress.

Re: Kernel 2.6.23.9 + mdadm 2.6.2-2 + Auto rebuild RAID1?

From: Justin Piszcz <hidden>
Date: 2007-12-01 12:23:16


On Sat, 1 Dec 2007, Jan Engelhardt wrote:
On Dec 1 2007 07:12, Justin Piszcz wrote:
quoted
On Sat, 1 Dec 2007, Jan Engelhardt wrote:
quoted
On Dec 1 2007 06:19, Justin Piszcz wrote:
quoted
RAID1, 0.90.03 superblocks (in order to be compatible with LILO, if
you use 1.x superblocks with LILO you can't boot)
Says who? (Don't use LILO ;-)
I like LILO :)
LILO cares much less about disk layout / filesystems than GRUB does,
so I would have expected LILO to cope with all sorts of superblocks.
OTOH I would suspect GRUB to only handle 0.90 and 1.0, where the MDSB
is at the end of the disk <=> the filesystem SB is at the very beginning.
quoted
quoted
quoted
So two questions:

1) If it rebuilt by itself, how come it only rebuilt /dev/md0?
So md1/md2 was NOT rebuilt?
Correct.
Well it should, after they are readded using -a.
If they still don't, then perhaps another resync is in progress.
There was nothing in progress, md0 was synced up and md1,md2 = degraded.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help