Commit 2cffc4a0 authored by NeilBrown's avatar NeilBrown

md: remove CONFIG_MD_RAID_RESHAPE config option.

This was only needed when the code was experimental.  Most of it
is well tested now, so the option is no longer useful.
Signed-off-by: default avatarNeilBrown <neilb@suse.de>
parent ab69ae12
...@@ -152,35 +152,6 @@ config MD_RAID456 ...@@ -152,35 +152,6 @@ config MD_RAID456
If unsure, say Y. If unsure, say Y.
config MD_RAID5_RESHAPE
bool "Support adding drives to a raid-5 array"
depends on MD_RAID456
default y
---help---
A RAID-5 set can be expanded by adding extra drives. This
requires "restriping" the array which means (almost) every
block must be written to a different place.
This option allows such restriping to be done while the array
is online.
You will need mdadm version 2.4.1 or later to use this
feature safely. During the early stage of reshape there is
a critical section where live data is being over-written. A
crash during this time needs extra care for recovery. The
newer mdadm takes a copy of the data in the critical section
and will restore it, if necessary, after a crash.
The mdadm usage is e.g.
mdadm --grow /dev/md1 --raid-disks=6
to grow '/dev/md1' to having 6 disks.
Note: The array can only be expanded, not contracted.
There should be enough spares already present to make the new
array workable.
If unsure, say Y.
config MD_RAID6_PQ config MD_RAID6_PQ
tristate tristate
......
...@@ -948,7 +948,6 @@ static int grow_stripes(raid5_conf_t *conf, int num) ...@@ -948,7 +948,6 @@ static int grow_stripes(raid5_conf_t *conf, int num)
return 0; return 0;
} }
#ifdef CONFIG_MD_RAID5_RESHAPE
static int resize_stripes(raid5_conf_t *conf, int newsize) static int resize_stripes(raid5_conf_t *conf, int newsize)
{ {
/* Make all the stripes able to hold 'newsize' devices. /* Make all the stripes able to hold 'newsize' devices.
...@@ -1073,7 +1072,6 @@ static int resize_stripes(raid5_conf_t *conf, int newsize) ...@@ -1073,7 +1072,6 @@ static int resize_stripes(raid5_conf_t *conf, int newsize)
conf->pool_size = newsize; conf->pool_size = newsize;
return err; return err;
} }
#endif
static int drop_one_stripe(raid5_conf_t *conf) static int drop_one_stripe(raid5_conf_t *conf)
{ {
...@@ -4822,7 +4820,6 @@ static int raid5_resize(mddev_t *mddev, sector_t sectors) ...@@ -4822,7 +4820,6 @@ static int raid5_resize(mddev_t *mddev, sector_t sectors)
return 0; return 0;
} }
#ifdef CONFIG_MD_RAID5_RESHAPE
static int raid5_check_reshape(mddev_t *mddev) static int raid5_check_reshape(mddev_t *mddev)
{ {
raid5_conf_t *conf = mddev_to_conf(mddev); raid5_conf_t *conf = mddev_to_conf(mddev);
...@@ -4967,7 +4964,6 @@ static int raid5_start_reshape(mddev_t *mddev) ...@@ -4967,7 +4964,6 @@ static int raid5_start_reshape(mddev_t *mddev)
md_new_event(mddev); md_new_event(mddev);
return 0; return 0;
} }
#endif
/* This is called from the reshape thread and should make any /* This is called from the reshape thread and should make any
* changes needed in 'conf' * changes needed in 'conf'
...@@ -5289,11 +5285,9 @@ static struct mdk_personality raid6_personality = ...@@ -5289,11 +5285,9 @@ static struct mdk_personality raid6_personality =
.sync_request = sync_request, .sync_request = sync_request,
.resize = raid5_resize, .resize = raid5_resize,
.size = raid5_size, .size = raid5_size,
#ifdef CONFIG_MD_RAID5_RESHAPE
.check_reshape = raid5_check_reshape, .check_reshape = raid5_check_reshape,
.start_reshape = raid5_start_reshape, .start_reshape = raid5_start_reshape,
.finish_reshape = raid5_finish_reshape, .finish_reshape = raid5_finish_reshape,
#endif
.quiesce = raid5_quiesce, .quiesce = raid5_quiesce,
.takeover = raid6_takeover, .takeover = raid6_takeover,
.reconfig = raid6_reconfig, .reconfig = raid6_reconfig,
...@@ -5314,11 +5308,9 @@ static struct mdk_personality raid5_personality = ...@@ -5314,11 +5308,9 @@ static struct mdk_personality raid5_personality =
.sync_request = sync_request, .sync_request = sync_request,
.resize = raid5_resize, .resize = raid5_resize,
.size = raid5_size, .size = raid5_size,
#ifdef CONFIG_MD_RAID5_RESHAPE
.check_reshape = raid5_check_reshape, .check_reshape = raid5_check_reshape,
.start_reshape = raid5_start_reshape, .start_reshape = raid5_start_reshape,
.finish_reshape = raid5_finish_reshape, .finish_reshape = raid5_finish_reshape,
#endif
.quiesce = raid5_quiesce, .quiesce = raid5_quiesce,
.takeover = raid5_takeover, .takeover = raid5_takeover,
.reconfig = raid5_reconfig, .reconfig = raid5_reconfig,
...@@ -5340,11 +5332,9 @@ static struct mdk_personality raid4_personality = ...@@ -5340,11 +5332,9 @@ static struct mdk_personality raid4_personality =
.sync_request = sync_request, .sync_request = sync_request,
.resize = raid5_resize, .resize = raid5_resize,
.size = raid5_size, .size = raid5_size,
#ifdef CONFIG_MD_RAID5_RESHAPE
.check_reshape = raid5_check_reshape, .check_reshape = raid5_check_reshape,
.start_reshape = raid5_start_reshape, .start_reshape = raid5_start_reshape,
.finish_reshape = raid5_finish_reshape, .finish_reshape = raid5_finish_reshape,
#endif
.quiesce = raid5_quiesce, .quiesce = raid5_quiesce,
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment