Always do sanity check now. (Possible now that we have lba48.)

This commit is contained in:
Ben Gras 2006-03-03 15:34:24 +00:00
parent aa3932eb8b
commit 7465aa5b60

View file

@ -1748,22 +1748,15 @@ int cylinderalign(region_t *reg)
void regionize(void) void regionize(void)
{ {
int free_sec, i, si, sanitycheck = 1; int free_sec, i, si;
sort(); sort();
free_sec = table[0].lowsec + sectors; free_sec = table[0].lowsec + sectors;
/* Looks like disk too big - disable sanity check. */
if(table[0].size >= (1L << 28) - 1) {
fprintf(stderr, "WARNING: disabling sanity checks.\n");
sanitycheck = 0;
}
/* Create region data used in autopart mode. */ /* Create region data used in autopart mode. */
free_regions = used_regions = nr_regions = nr_partitions = 0; free_regions = used_regions = nr_regions = nr_partitions = 0;
if(sanitycheck && if(table[0].lowsec > table[sort_order[1]].lowsec &&
table[0].lowsec > table[sort_order[1]].lowsec &&
table[sort_order[1]].sysind != NO_PART) { table[sort_order[1]].sysind != NO_PART) {
printf("\nSanity check failed on %s - first partition starts before disk.\n" printf("\nSanity check failed on %s - first partition starts before disk.\n"
"Please use expert mode to correct it.\n", curdev->name); "Please use expert mode to correct it.\n", curdev->name);
@ -1792,7 +1785,7 @@ void regionize(void)
} }
/* Sanity check. */ /* Sanity check. */
if(sanitycheck && si > 1) { if(si > 1) {
if(table[i].lowsec < table[sort_order[si-1]].lowsec || if(table[i].lowsec < table[sort_order[si-1]].lowsec ||
table[i].lowsec < table[sort_order[si-1]].lowsec + table[sort_order[si-1]].size) { table[i].lowsec < table[sort_order[si-1]].lowsec + table[sort_order[si-1]].size) {
printf("\nSanity check failed on %s - partitions overlap.\n" printf("\nSanity check failed on %s - partitions overlap.\n"
@ -1800,7 +1793,7 @@ void regionize(void)
exit(1); exit(1);
} }
} }
if(sanitycheck && table[i].size > table[0].size) { if(table[i].size > table[0].size) {
printf("\nSanity check failed on %s - partition is larger than disk.\n" printf("\nSanity check failed on %s - partition is larger than disk.\n"
"Please use expert mode to correct it.\n", curdev->name); "Please use expert mode to correct it.\n", curdev->name);
exit(1); exit(1);