]> git.baikalelectronics.ru Git - kernel.git/commit
md: allow a resync that is waiting for other resync to complete, to be aborted.
authorNeilBrown <neilb@suse.de>
Wed, 30 Dec 2009 04:25:23 +0000 (15:25 +1100)
committerNeilBrown <neilb@suse.de>
Wed, 30 Dec 2009 04:25:23 +0000 (15:25 +1100)
commitc24ce2c1561410dfffa062c154cf672e009ec241
tree7a013e233db56b7c90cf0857d6c3bc74c19cf07f
parenta7102d49a5be5fca8c1bec40519997ba8e399078
md: allow a resync that is waiting for other resync to complete, to be aborted.

If two arrays share a device, then they will not both resync at the
same time.  One will wait for the other to complete.
While waiting, the MD_RECOVERY_INTR flag is not checked so a device
failure, which would make the resync pointless, does not cause the
resync to abort, so the failed device cannot be removed (as it cannot
be remove while a resync is happening).

So add a test for MD_RECOVERY_INTR.

Reported-by: Brett Russ <bruss@netezza.com>
Signed-off-by: NeilBrown <neilb@suse.de>
drivers/md/md.c