summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
1fe2e10)
Reshaping a 3-disk RAID5 to 4-disk RAID6 will cause a hang of
the resync after the grow.
Adding a spare disk to avoid degrading the array when growing
is successful, but not successful when supplying a backup file
on the command line. If the reshape job is not already running,
set the sync_max value to max.
Signed-off-by: Nigel Croxon <ncroxon@redhat.com>
Signed-off-by: Jes Sorensen <jsorensen@fb.com>
err = err ?: sysfs_set_num(sra, NULL, "sync_max", sync_max_to_set);
if (!already_running && err == 0) {
int cnt = 5;
err = err ?: sysfs_set_num(sra, NULL, "sync_max", sync_max_to_set);
if (!already_running && err == 0) {
int cnt = 5;
do {
err = sysfs_set_str(sra, NULL, "sync_action",
"reshape");
do {
err = sysfs_set_str(sra, NULL, "sync_action",
"reshape");
+ err2 = sysfs_set_str(sra, NULL, "sync_max",
+ "max");
+ if (err || err2)
- } while (err && errno == EBUSY && cnt-- > 0);
+ } while (err && err2 && errno == EBUSY && cnt-- > 0);