Lines Matching refs:lp

290 fixlabel(struct disklabel *lp)  in fixlabel()  argument
295 for (i = 0; i < lp->d_npartitions; i++) { in fixlabel()
298 if (lp->d_partitions[i].p_size) in fixlabel()
302 dp = &lp->d_partitions[0]; in fixlabel()
304 dp->p_size = lp->d_secperunit - dp->p_offset; in fixlabel()
311 makelabel(const char *type, struct disklabel *lp) in makelabel() argument
321 *lp = *dp; in makelabel()
322 bzero(lp->d_packname, sizeof(lp->d_packname)); in makelabel()
373 struct disklabel *lp = &lab; in writelabel() local
381 lp->d_magic = DISKMAGIC; in writelabel()
382 lp->d_magic2 = DISKMAGIC; in writelabel()
383 lp->d_checksum = 0; in writelabel()
384 lp->d_checksum = dkcksum(lp); in writelabel()
391 lp); in writelabel()
508 display(FILE *f, const struct disklabel *lp) in display() argument
513 if (lp == NULL) in display()
514 lp = &lab; in display()
518 if (lp->d_type < DKMAXTYPES) in display()
519 fprintf(f, "type: %s\n", dktypenames[lp->d_type]); in display()
521 fprintf(f, "type: %u\n", lp->d_type); in display()
522 fprintf(f, "disk: %.*s\n", (int)sizeof(lp->d_typename), in display()
523 lp->d_typename); in display()
524 fprintf(f, "label: %.*s\n", (int)sizeof(lp->d_packname), in display()
525 lp->d_packname); in display()
527 if (lp->d_flags & D_REMOVABLE) in display()
529 if (lp->d_flags & D_ECC) in display()
531 if (lp->d_flags & D_BADSECT) in display()
534 fprintf(f, "bytes/sector: %lu\n", (u_long)lp->d_secsize); in display()
535 fprintf(f, "sectors/track: %lu\n", (u_long)lp->d_nsectors); in display()
536 fprintf(f, "tracks/cylinder: %lu\n", (u_long)lp->d_ntracks); in display()
537 fprintf(f, "sectors/cylinder: %lu\n", (u_long)lp->d_secpercyl); in display()
538 fprintf(f, "cylinders: %lu\n", (u_long)lp->d_ncylinders); in display()
539 fprintf(f, "sectors/unit: %lu\n", (u_long)lp->d_secperunit); in display()
540 fprintf(f, "rpm: %u\n", lp->d_rpm); in display()
541 fprintf(f, "interleave: %u\n", lp->d_interleave); in display()
542 fprintf(f, "trackskew: %u\n", lp->d_trackskew); in display()
543 fprintf(f, "cylinderskew: %u\n", lp->d_cylskew); in display()
545 (u_long)lp->d_headswitch); in display()
547 (u_long)lp->d_trkseek); in display()
550 if (lp->d_drivedata[i]) in display()
555 fprintf(f, "%lu ", (u_long)lp->d_drivedata[j]); in display()
558 fprintf(f, "%u partitions:\n", lp->d_npartitions); in display()
561 pp = lp->d_partitions; in display()
562 for (i = 0; i < lp->d_npartitions; i++, pp++) { in display()
723 getasciilabel(FILE *f, struct disklabel *lp) in getasciilabel() argument
733 makelabel("auto", lp); in getasciilabel()
737 lp->d_bbsize = BBSIZE; /* XXX */ in getasciilabel()
738 lp->d_sbsize = 0; /* XXX */ in getasciilabel()
759 lp->d_type = cpp - dktypenames; in getasciilabel()
772 lp->d_type = v; in getasciilabel()
791 lp->d_flags = v; in getasciilabel()
796 lp->d_drivedata[i++] = strtoul(cp, NULL, 10); in getasciilabel()
805 lp->d_npartitions = MAXPARTITIONS; in getasciilabel()
810 lp->d_npartitions = DEFPARTITIONS; in getasciilabel()
813 lp->d_npartitions = v; in getasciilabel()
819 strncpy(lp->d_typename, tp, sizeof (lp->d_typename)); in getasciilabel()
823 strncpy(lp->d_packname, tp, sizeof (lp->d_packname)); in getasciilabel()
834 lp->d_secsize = v; in getasciilabel()
849 lp->d_nsectors = v; in getasciilabel()
859 lp->d_secpercyl = v; in getasciilabel()
869 lp->d_ntracks = v; in getasciilabel()
879 lp->d_ncylinders = v; in getasciilabel()
889 lp->d_secperunit = v; in getasciilabel()
899 lp->d_rpm = v; in getasciilabel()
909 lp->d_interleave = v; in getasciilabel()
919 lp->d_trackskew = v; in getasciilabel()
929 lp->d_cylskew = v; in getasciilabel()
934 lp->d_headswitch = v; in getasciilabel()
939 lp->d_trkseek = v; in getasciilabel()
953 if (part >= lp->d_npartitions) { in getasciilabel()
956 lineno, 'a' + lp->d_npartitions - 1, cp); in getasciilabel()
962 if (getasciipartspec(tp, lp, part, lineno) != 0) { in getasciilabel()
967 errors += checklabel(lp); in getasciilabel()
999 getasciipartspec(char *tp, struct disklabel *lp, int part, int lineno) in getasciipartspec() argument
1006 pp = &lp->d_partitions[part]; in getasciipartspec()
1081 checklabel(struct disklabel *lp) in checklabel() argument
1093 if (lp == NULL) in checklabel()
1094 lp = &lab; in checklabel()
1098 if (lp->d_secsize == 0) { in checklabel()
1102 if (lp->d_nsectors == 0) { in checklabel()
1106 if (lp->d_ntracks == 0) { in checklabel()
1110 if (lp->d_ncylinders == 0) { in checklabel()
1114 if (lp->d_rpm == 0) in checklabel()
1116 if (lp->d_secpercyl == 0) in checklabel()
1117 lp->d_secpercyl = lp->d_nsectors * lp->d_ntracks; in checklabel()
1118 if (lp->d_secperunit == 0) in checklabel()
1119 lp->d_secperunit = lp->d_secpercyl * lp->d_ncylinders; in checklabel()
1120 if (lp->d_bbsize == 0) { in checklabel()
1123 } else if (lp->d_bbsize % lp->d_secsize) in checklabel()
1125 if (lp->d_npartitions > MAXPARTITIONS) { in checklabel()
1127 (u_long)lp->d_npartitions, MAXPARTITIONS); in checklabel()
1130 if (lp->d_npartitions < DEFPARTITIONS) { in checklabel()
1132 (u_long)lp->d_npartitions, DEFPARTITIONS); in checklabel()
1139 if (lp->d_secsize == 0) in checklabel()
1140 lp->d_secsize = vl->d_secsize; in checklabel()
1141 if (lp->d_nsectors == 0) in checklabel()
1142 lp->d_nsectors = vl->d_nsectors; in checklabel()
1143 if (lp->d_ntracks == 0) in checklabel()
1144 lp->d_ntracks = vl->d_ntracks; in checklabel()
1145 if (lp->d_ncylinders == 0) in checklabel()
1146 lp->d_ncylinders = vl->d_ncylinders; in checklabel()
1147 if (lp->d_rpm == 0) in checklabel()
1148 lp->d_rpm = vl->d_rpm; in checklabel()
1149 if (lp->d_interleave == 0) in checklabel()
1150 lp->d_interleave = vl->d_interleave; in checklabel()
1151 if (lp->d_secpercyl == 0) in checklabel()
1152 lp->d_secpercyl = vl->d_secpercyl; in checklabel()
1153 if (lp->d_secperunit == 0 || in checklabel()
1154 lp->d_secperunit > vl->d_secperunit) in checklabel()
1155 lp->d_secperunit = vl->d_secperunit; in checklabel()
1156 if (lp->d_bbsize == 0) in checklabel()
1157 lp->d_bbsize = vl->d_bbsize; in checklabel()
1158 if (lp->d_npartitions < DEFPARTITIONS || in checklabel()
1159 lp->d_npartitions > MAXPARTITIONS) in checklabel()
1160 lp->d_npartitions = vl->d_npartitions; in checklabel()
1168 for (i = 0; i < lp->d_npartitions; i++) { in checklabel()
1169 pp = &lp->d_partitions[i]; in checklabel()
1173 pp->p_size = lp->d_secperunit; in checklabel()
1219 if (size % lp->d_secsize != 0) in checklabel()
1222 size /= lp->d_secsize; in checklabel()
1233 for (i = 0; i < lp->d_npartitions; i++) { in checklabel()
1234 pp = &lp->d_partitions[i]; in checklabel()
1243 if (base_offset < lp->d_secperunit) in checklabel()
1244 free_space += lp->d_secperunit - base_offset; in checklabel()
1255 for (i = 0; i < lp->d_npartitions; i++) { in checklabel()
1256 pp = &lp->d_partitions[i]; in checklabel()
1282 pp = &lp->d_partitions[i]; in checklabel()
1292 current_offset = lp->d_secperunit; in checklabel()
1293 for (i = lp->d_npartitions - 1; i > hog_part; i--) { in checklabel()
1294 pp = &lp->d_partitions[i]; in checklabel()
1311 lp->d_partitions[hog_part].p_size = 0; in checklabel()
1313 lp->d_partitions[hog_part].p_size = current_offset - in checklabel()
1321 for (i = 0; i < lp->d_npartitions; i++) { in checklabel()
1323 pp = &lp->d_partitions[i]; in checklabel()
1359 for (i = 0; i < lp->d_npartitions; i++) { in checklabel()
1361 pp = &lp->d_partitions[i]; in checklabel()
1366 if (pp->p_size % lp->d_secpercyl) in checklabel()
1369 if (pp->p_offset % lp->d_secpercyl) in checklabel()
1373 if (pp->p_offset > lp->d_secperunit) { in checklabel()
1378 if (pp->p_offset + pp->p_size > lp->d_secperunit) { in checklabel()
1389 if (pp->p_size != lp->d_secperunit) in checklabel()
1393 (pp->p_size != lp->d_secperunit)) { in checklabel()
1402 pp2 = &lp->d_partitions[j]; in checklabel()
1417 for (; i < lp->d_npartitions; i++) { in checklabel()
1419 pp = &lp->d_partitions[i]; in checklabel()