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)
commit404e4b43fdd6daa7b4a9f81bc7e4358281d763fa
tree7a013e233db56b7c90cf0857d6c3bc74c19cf07f
parent7fb9dadc91948ddd16d1d32e414b5e71ec63b97b
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