]> git.ipfire.org Git - thirdparty/mdadm.git/commit - Grow.c
FIX: Remove disks in mdmon for external metadata
authorKrzysztof Wojcik <krzysztof.wojcik@intel.com>
Thu, 27 Jan 2011 16:46:50 +0000 (17:46 +0100)
committerNeilBrown <neilb@suse.de>
Fri, 28 Jan 2011 01:03:11 +0000 (11:03 +1000)
commitd5ca4a23fc278d6cfd05610b3c7e3ca63c416f8a
tree139599a7ae60028fd55e332bef120c46620481d5
parent10d0d365eb4b441664de136410655df8ab902806
FIX: Remove disks in mdmon for external metadata

For raid10 -> raid0 takeover operation we should reject disks
in mirror by marking them as 'failed' and then remove them from
array by writing "remove" to disk state.

For external metadata second action is executed by mdmon.
According the description in monitor.c:175 when monitor detect
"faulty" in device state, it blocks the device, mark it as failed
in metadata, unblocks the device and finally writes "remove"
to device state.
For external case writing "remove" to device state in mdadm
is not necessary and harmful.
It may cause following issues:
1. "remove" operation for external case in mdadm is not finish
with successful result because monitor may block the device or disk
has been already removed by monitor.
2. If disk is removed by mdadm earlier than mdmon catch "failed" state,
metadata is not properly updated- is not marked as failed.

Signed-off-by: Krzysztof Wojcik <krzysztof.wojcik@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
Grow.c