Lines Matching refs:pm
84 if (pm->no_mbr || pm->no_part)
88 if (pm->parts == NULL) {
91 select_part_scheme(pm, NULL, true, NULL);
97 (*ps->create_new_for_disk)(pm->diskdev,
98 0, pm->dlsize, true, NULL);
102 pm->parts = parts;
103 if (ps->size_limit > 0 && pm->dlsize > ps->size_limit)
104 pm->dlsize = ps->size_limit;
107 res = set_bios_geom_with_mbr_guess(pm->parts);
113 pm->parts->pscheme->destroy_part_scheme(pm->parts);
114 pm->parts = NULL;
147 if (PI_ISBSDFS(&pm->bsdlabel[part])) {
148 pm->bsdlabel[part].pi_flags |=
152 strcpy(pm->bsdlabel[part].pi_mount, "/");
159 pm->bsdlabel[part_raw].pi_offset = 0;
160 pm->bsdlabel[part_raw].pi_size = pm->dlsize;
164 if (edit_and_check_label(pm->bsdlabel, maxpart, part_raw,
179 if (pm->ptsize == 0)
180 pm->ptsize = pm->dlsize - pm->ptstart;
181 if (pm->dlsize == 0)
182 pm->dlsize = pm->ptstart + pm->ptsize;
185 partstart = pm->ptstart;
186 ptend = pm->ptstart + pm->ptsize;
190 pm->ptsize / (MEG / pm->sectorsize),
197 pm->current_cylsize = pm->dlcylsize;
201 memset(&pm->bsdlabel, 0, sizeof pm->bsdlabel);
205 pm->bsdlabel[part].pi_fstype = FS_UNUSED;
211 pm->bsdlabel[part_raw].pi_offset = 0;
212 pm->bsdlabel[part_raw].pi_size = pm->dlsize;
217 pm->bsdlabel[PART_C].pi_offset = pm->ptstart;
218 pm->bsdlabel[PART_C].pi_size = pm->ptsize;
223 if (pm->bootsize != 0) {
224 pm->bsdlabel[PART_BOOT_FAT12].pi_fstype = FS_MSDOS;
225 pm->bsdlabel[PART_BOOT_FAT12].pi_size = pm->bootsize;
226 pm->bsdlabel[PART_BOOT_FAT12].pi_offset = pm->bootstart;
227 pm->bsdlabel[PART_BOOT_FAT12].pi_flags |= PART_BOOT_FAT12_PI_FLAGS;
228 strlcpy(pm->bsdlabel[PART_BOOT_FAT12].pi_mount,
230 sizeof pm->bsdlabel[PART_BOOT_FAT12].pi_mount);
233 pm->bsdlabel[PART_BOOT_BINFO].pi_fstype = FS_OTHER;
234 pm->bsdlabel[PART_BOOT_BINFO].pi_size = binfosize;
235 pm->bsdlabel[PART_BOOT_BINFO].pi_offset = binfostart;
238 pm->bsdlabel[PART_BOOT_PREP].pi_fstype = FS_BOOT;
239 pm->bsdlabel[PART_BOOT_PREP].pi_size = bprepsize;
240 pm->bsdlabel[PART_BOOT_PREP].pi_offset = bprepstart;
250 if (pm->bsdlabel[i].pi_size != 0)
253 p = &pm->oldlabel[i];
260 if (p->pi_offset < pm->ptstart + pm->ptsize &&
261 p->pi_offset + p->pi_size > pm->ptstart)
267 pm->bsdlabel[i] = pm->oldlabel[i];
281 if (edit_and_check_label(pm->bsdlabel, maxpart, part_raw, part_bsd) == 0) {
289 msg_prompt(MSG_packname, pm->bsddiskname, pm->bsddiskname, sizeof pm->bsddiskname);
292 (void) savenewlabel(pm->bsdlabel, maxpart);
399 if (pm->bootstart == 0 || pm->bootsize == 0 || rdb_found)
402 snprintf(bootdev, sizeof bootdev, "/dev/r%s%c", pm->diskdev,
498 read_mbr(pm->diskdev, &mbr);
547 pm->bootstart = part->mbrp_start;
548 pm->bootsize = part->mbrp_size;
566 if (!(pm->bootsize >= (MIN_FAT12_BOOT/512) ||
586 if (pm->bootsize > 0 && pm->bootsize < (MIN_FAT12_BOOT/512)) {
594 if ((pm->bootstart == 0 || pm->bootsize == 0) &&
649 fd = opendisk(pm->diskdev, O_RDONLY, diskpath, sizeof(diskpath), 0);