md/raid5: don't include 'spare' drives when reshaping to fewer devices.
authorNeilBrown <neilb@suse.de>
Thu, 17 Jun 2010 07:48:26 +0000 (17:48 +1000)
committerNeilBrown <neilb@suse.de>
Thu, 24 Jun 2010 03:36:04 +0000 (13:36 +1000)
commit3424bf6a772cff606fc4bc24a3639c937afb547f
treebe299de834e0f939d19665efec4cacadd74c4914
parent2f115882499f3e5eca33d1df07b8876cc752a1ff
md/raid5: don't include 'spare' drives when reshaping to fewer devices.

There are few situations where it would make any sense to add a spare
when reducing the number of devices in an array, but it is
conceivable:  A 6 drive RAID6 with two missing devices could be
reshaped to a 5 drive RAID6, and a spare could become available
just in time for the reshape, but not early enough to have been
recovered first.  'freezing' recovery can make this easy to
do without any races.

However doing such a thing is a bad idea.  md will not record the
partially-recovered state of the 'spare' and when the reshape
finished it will think that the spare is still spare.
Easiest way to avoid this confusion is to simply disallow it.

Signed-off-by: NeilBrown <neilb@suse.de>
drivers/md/raid5.c