imsm: Optimize expansion speed when no backup is required
When no reshape backup is required (e.g. OLCE after critical section), check-pointing can use bigger steps than backup space allows for. Signed-off-by: Adam Kwolek <adam.kwolek@intel.com> Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
parent
a47e44fb96
commit
8016a6d42e
|
@ -8854,11 +8854,19 @@ static int imsm_manage_reshape(
|
|||
"migration record (UNIT_SRC_IN_CP_AREA)\n");
|
||||
goto abort;
|
||||
}
|
||||
} else {
|
||||
/* set next step to use whole border area */
|
||||
border /= next_step;
|
||||
if (border > 1)
|
||||
next_step *= border;
|
||||
}
|
||||
/* When data backed up, checkpoint stored,
|
||||
* kick the kernel to reshape unit of data
|
||||
*/
|
||||
next_step = next_step + sra->reshape_progress;
|
||||
/* limit next step to array max position */
|
||||
if (next_step > max_position)
|
||||
next_step = max_position;
|
||||
sysfs_set_num(sra, NULL, "suspend_lo", sra->reshape_progress);
|
||||
sysfs_set_num(sra, NULL, "suspend_hi", next_step);
|
||||
sra->reshape_progress = next_step;
|
||||
|
|
Loading…
Reference in New Issue