Avoid the "calculated sectors per cylinder disagrees with disklabel"

warning for the default case where the user hasn't specified either -t
or -u on the command line.  It's been confusing our users.
This commit is contained in:
Joerg Wunsch 1995-09-09 13:03:09 +00:00
parent 564643c636
commit ccf9a17c14
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=10649

View File

@ -189,6 +189,7 @@ int nrpos = NRPOS; /* # of distinguished rotational positions */
int bbsize = BBSIZE; /* boot block size */
int sbsize = SBSIZE; /* superblock size */
int mntflags = MNT_ASYNC; /* flags to be passed to mount */
int t_or_u_flag_provided = 0; /* user has specified -t or -u */
u_long memleft; /* virtual memory available */
caddr_t membase; /* start address of memory based filesystem */
char *filename;
@ -326,10 +327,12 @@ main(argc, argv)
fatal("%s: bad file system size", optarg);
break;
case 't':
t_or_u_flag_provided++;
if ((ntracks = atoi(optarg)) < 0)
fatal("%s: bad total tracks", optarg);
break;
case 'u':
t_or_u_flag_provided++;
if ((nsectors = atoi(optarg)) < 0)
fatal("%s: bad sectors/track", optarg);
break;
@ -494,7 +497,12 @@ main(argc, argv)
cylspares = 0;
}
secpercyl = nsectors * ntracks - cylspares;
if (secpercyl != lp->d_secpercyl)
/*
* Only complain if -t or -u have been specified; the default
* case (4096 sectors per cylinder) is intented to disagree
* with the disklabel.
*/
if (t_or_u_flag_provided && secpercyl != lp->d_secpercyl)
fprintf(stderr, "%s (%d) %s (%lu)\n",
"Warning: calculated sectors per cylinder", secpercyl,
"disagrees with disk label", lp->d_secpercyl);