md: load/store badblock list from v1.x metadata
authorNeilBrown <neilb@suse.de>
Thu, 28 Jul 2011 01:31:47 +0000 (11:31 +1000)
committerNeilBrown <neilb@suse.de>
Thu, 28 Jul 2011 01:31:47 +0000 (11:31 +1000)
commit2699b67223aca6b1450fc2f72e40fada952afc85
treec84d0cbb763ad03cd770a218a37f0f1ec31118af
parent34b343cff4354ab9864be83be88405fd53d928a0
md: load/store badblock list from v1.x metadata

Space must have been allocated when array was created.
A feature flag is set when the badblock list is non-empty, to
ensure old kernels don't load and trust the whole device.

We only update the on-disk badblocklist when it has changed.
If the badblocklist (or other metadata) is stored on a bad block, we
don't cope very well.

If metadata has no room for bad block, flag bad-blocks as disabled,
and do the same for 0.90 metadata.

Signed-off-by: NeilBrown <neilb@suse.de>
drivers/md/md.c
drivers/md/md.h
include/linux/raid/md_p.h