tree 9d090d2e363d269cdc55549213025d86af8ef70a
parent e6ffbcb6cd0ac471223df24ae77eb486c1ee68cc
author NeilBrown <neilb@suse.de> 1282096619 +1000
committer NeilBrown <neilb@suse.de> 1282097072 +1000

md: provide appropriate return value for spare_active functions.

md_check_recovery expects ->spare_active to return 'true' if any
spares were activated, but none of them do, so the consequent change
in 'degraded' is not notified through sysfs.

So count the number of spares activated, subtract it from 'degraded'
just once, and return it.

Reported-by: Adrian Drzewiecki <adriand@vmware.com>
Signed-off-by: NeilBrown <neilb@suse.de>
