randomconfig fixes

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko
2016-06-19 18:15:33 +02:00
parent ce824aecf2
commit 015db5800c
11 changed files with 80 additions and 46 deletions

View File

@ -164,6 +164,7 @@ static const struct cmdoptions_t {
const unsigned char code;
} g_cmdoptions[] = {
/*"12345678" + NUL */
//TODO: convert to index_in_strings()
{ "fb" , 1, CMD_FB },
{ "db" , 1, CMD_DB },
{ "a" , 0, CMD_ALL },
@ -416,7 +417,7 @@ int fbset_main(int argc, char **argv)
unsigned options = 0;
const char *fbdev = DEFAULTFBDEV;
const char *modefile = DEFAULTFBMODE;
IF_FEATURE_FBSET_READMODE(const char *modefile = DEFAULTFBMODE;)
char *thisarg;
char *mode = mode; /* for compiler */
@ -444,7 +445,7 @@ int fbset_main(int argc, char **argv)
fbdev = argv[1];
break;
case CMD_DB:
modefile = argv[1];
IF_FEATURE_FBSET_READMODE(modefile = argv[1];)
break;
case CMD_ALL:
options |= OPT_ALL;

View File

@ -366,10 +366,11 @@ bsd_select(void)
}
printf("Reading disklabel of %s at sector %u\n",
partname(disk_device, t+1, 0), ss + BSD_LABELSECTOR);
if (xbsd_readlabel(xbsd_part) == 0)
if (xbsd_readlabel(xbsd_part) == 0) {
if (xbsd_create_disklabel() == 0)
return;
break;
}
}
}

View File

@ -504,17 +504,19 @@ verify_sgi(int verbose)
if (sgi_get_sysid(Index[0]) == SGI_ENTIRE_DISK) {
if ((Index[0] != 10) && verbose)
printf("IRIX likes when Partition 11 covers the entire disk\n");
if ((sgi_get_start_sector(Index[0]) != 0) && verbose)
if ((sgi_get_start_sector(Index[0]) != 0) && verbose) {
printf("The entire disk partition should start "
"at block 0,\n"
"not at diskblock %u\n",
sgi_get_start_sector(Index[0]));
if (SGI_DEBUG) /* I do not understand how some disks fulfil it */
}
if (SGI_DEBUG) { /* I do not understand how some disks fulfil it */
if ((sgi_get_num_sectors(Index[0]) != lastblock) && verbose)
printf("The entire disk partition is only %u diskblock large,\n"
"but the disk is %u diskblocks long\n",
sgi_get_num_sectors(Index[0]), lastblock);
lastblock = sgi_get_num_sectors(Index[0]);
}
} else {
if (verbose)
printf("One Partition (#11) should cover the entire disk\n");
@ -669,16 +671,17 @@ sgi_set_volhdr(void)
int n;
for (n = 8; n < g_partitions; n++) {
if (!sgi_get_num_sectors(n)) {
/*
* 5 cylinders is an arbitrary value I like
* IRIX 5.3 stored files in the volume header
* (like sash, symmon, fx, ide) with ca. 3200
* sectors.
*/
if (g_heads * g_sectors * 5 < sgi_get_lastblock())
sgi_set_partition(n, 0, g_heads * g_sectors * 5, SGI_VOLHDR);
break;
if (!sgi_get_num_sectors(n)) {
/*
* 5 cylinders is an arbitrary value I like
* IRIX 5.3 stored files in the volume header
* (like sash, symmon, fx, ide) with ca. 3200
* sectors.
*/
if (g_heads * g_sectors * 5 < sgi_get_lastblock()) {
sgi_set_partition(n, 0, g_heads * g_sectors * 5, SGI_VOLHDR);
break;
}
}
}
}