summaryrefslogtreecommitdiffstats
path: root/Documentation/md.txt
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2009-03-31 15:17:38 +1100
committerNeilBrown <neilb@suse.de>2009-03-31 15:17:38 +1100
commitec32a2bd35bd6b933a5db6542c48210ce069a376 (patch)
tree32d30344202025cf1c6cd202394e65ff7e99753f /Documentation/md.txt
parentfef9c61fdfabf97a307c2cf3621a6949f0a4b995 (diff)
downloadlinux-ec32a2bd35bd6b933a5db6542c48210ce069a376.tar.gz
linux-ec32a2bd35bd6b933a5db6542c48210ce069a376.tar.bz2
linux-ec32a2bd35bd6b933a5db6542c48210ce069a376.zip
md: allow number of drives in raid5 to be reduced
When reshaping a raid5 to have fewer devices, we work from the end of the array to the beginning. md_do_sync gives addresses to sync_request that go from the beginning to the end. So largely ignore them use the internal state variable "reshape_progress" to keep track of what to do next. Never allow the size to be reduced below the minimum (4 for raid6, 3 otherwise). We require that the size of the array has already been reduced before the array is reshaped to a smaller size. This is because simply reducing the size is an easily reversible operation, while the reshape is immediately destructive and so is not reversible for the blocks at the ends of the devices. Thus to reshape an array to have fewer devices, you must first write an appropriately small size to md/array_size. When reshape finished, we remove any drives that are no longer needed and fix up ->degraded. Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'Documentation/md.txt')
0 files changed, 0 insertions, 0 deletions