Grow: restrict to 2.6.32

2.6.31 has a bug which can lead to unsafe reshaping.
So only allow a reshape with 2.6.32.
When the required fixed get into 2.6.31.y, this can be relaxed
slightly

Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
NeilBrown 2009-11-06 15:19:39 +11:00
parent 1b13faf757
commit d2505cff5a
1 changed files with 6 additions and 0 deletions

6
Grow.c
View File

@ -871,6 +871,12 @@ int Grow_reshape(char *devname, int fd, int quiet, char *backup_file,
ndata--;
}
if (odata == ndata &&
get_linux_version() < 2006032) {
fprintf(stderr, Name ": in-place reshape is not safe before 2.6.32, sorry.\n");
break;
}
/* Check that we can hold all the data */
size = ndata * array.size;
get_dev_size(fd, NULL, &array_size);