Lines Matching refs:pm

84 	if (pm->no_mbr || pm->no_part)  in md_get_info()
88 if (pm->parts == NULL) { in md_get_info()
91 select_part_scheme(pm, NULL, true, NULL); in md_get_info()
97 (*ps->create_new_for_disk)(pm->diskdev, in md_get_info()
98 0, pm->dlsize, true, NULL); in md_get_info()
102 pm->parts = parts; in md_get_info()
103 if (ps->size_limit > 0 && pm->dlsize > ps->size_limit) in md_get_info()
104 pm->dlsize = ps->size_limit; in md_get_info()
107 res = set_bios_geom_with_mbr_guess(pm->parts); in md_get_info()
113 pm->parts->pscheme->destroy_part_scheme(pm->parts); in md_get_info()
114 pm->parts = NULL; in md_get_info()
147 if (PI_ISBSDFS(&pm->bsdlabel[part])) { in md_make_bsd_partitions()
148 pm->bsdlabel[part].pi_flags |= in md_make_bsd_partitions()
152 strcpy(pm->bsdlabel[part].pi_mount, "/"); in md_make_bsd_partitions()
159 pm->bsdlabel[part_raw].pi_offset = 0; in md_make_bsd_partitions()
160 pm->bsdlabel[part_raw].pi_size = pm->dlsize; in md_make_bsd_partitions()
164 if (edit_and_check_label(pm->bsdlabel, maxpart, part_raw, in md_make_bsd_partitions()
179 if (pm->ptsize == 0) in md_make_bsd_partitions()
180 pm->ptsize = pm->dlsize - pm->ptstart; in md_make_bsd_partitions()
181 if (pm->dlsize == 0) in md_make_bsd_partitions()
182 pm->dlsize = pm->ptstart + pm->ptsize; in md_make_bsd_partitions()
185 partstart = pm->ptstart; in md_make_bsd_partitions()
186 ptend = pm->ptstart + pm->ptsize; in md_make_bsd_partitions()
190 pm->ptsize / (MEG / pm->sectorsize), in md_make_bsd_partitions()
197 pm->current_cylsize = pm->dlcylsize; in md_make_bsd_partitions()
201 memset(&pm->bsdlabel, 0, sizeof pm->bsdlabel); in md_make_bsd_partitions()
205 pm->bsdlabel[part].pi_fstype = FS_UNUSED; in md_make_bsd_partitions()
211 pm->bsdlabel[part_raw].pi_offset = 0; in md_make_bsd_partitions()
212 pm->bsdlabel[part_raw].pi_size = pm->dlsize; in md_make_bsd_partitions()
217 pm->bsdlabel[PART_C].pi_offset = pm->ptstart; in md_make_bsd_partitions()
218 pm->bsdlabel[PART_C].pi_size = pm->ptsize; in md_make_bsd_partitions()
223 if (pm->bootsize != 0) { in md_make_bsd_partitions()
224 pm->bsdlabel[PART_BOOT_FAT12].pi_fstype = FS_MSDOS; in md_make_bsd_partitions()
225 pm->bsdlabel[PART_BOOT_FAT12].pi_size = pm->bootsize; in md_make_bsd_partitions()
226 pm->bsdlabel[PART_BOOT_FAT12].pi_offset = pm->bootstart; in md_make_bsd_partitions()
227 pm->bsdlabel[PART_BOOT_FAT12].pi_flags |= PART_BOOT_FAT12_PI_FLAGS; in md_make_bsd_partitions()
228 strlcpy(pm->bsdlabel[PART_BOOT_FAT12].pi_mount, in md_make_bsd_partitions()
230 sizeof pm->bsdlabel[PART_BOOT_FAT12].pi_mount); in md_make_bsd_partitions()
233 pm->bsdlabel[PART_BOOT_BINFO].pi_fstype = FS_OTHER; in md_make_bsd_partitions()
234 pm->bsdlabel[PART_BOOT_BINFO].pi_size = binfosize; in md_make_bsd_partitions()
235 pm->bsdlabel[PART_BOOT_BINFO].pi_offset = binfostart; in md_make_bsd_partitions()
238 pm->bsdlabel[PART_BOOT_PREP].pi_fstype = FS_BOOT; in md_make_bsd_partitions()
239 pm->bsdlabel[PART_BOOT_PREP].pi_size = bprepsize; in md_make_bsd_partitions()
240 pm->bsdlabel[PART_BOOT_PREP].pi_offset = bprepstart; in md_make_bsd_partitions()
244 pm->bsdlabel[PART_REST].pi_offset = 0; in md_make_bsd_partitions()
245 pm->bsdlabel[PART_REST].pi_size = pm->ptstart; in md_make_bsd_partitions()
255 if (pm->bsdlabel[i].pi_size != 0) in md_make_bsd_partitions()
258 p = &pm->oldlabel[i]; in md_make_bsd_partitions()
265 if (p->pi_offset < pm->ptstart + pm->ptsize && in md_make_bsd_partitions()
266 p->pi_offset + p->pi_size > pm->ptstart) in md_make_bsd_partitions()
272 pm->bsdlabel[i] = pm->oldlabel[i]; in md_make_bsd_partitions()
286 if (edit_and_check_label(pm->bsdlabel, maxpart, part_raw, part_bsd) == 0) { in md_make_bsd_partitions()
294 msg_prompt(MSG_packname, pm->bsddiskname, pm->bsddiskname, sizeof pm->bsddiskname); in md_make_bsd_partitions()
297 (void) savenewlabel(pm->bsdlabel, maxpart); in md_make_bsd_partitions()
404 if (pm->bootstart == 0 || pm->bootsize == 0 || rdb_found) in md_post_disklabel()
407 snprintf(bootdev, sizeof bootdev, "/dev/r%s%c", pm->diskdev, in md_post_disklabel()
503 read_mbr(pm->diskdev, &mbr); in md_pre_update()
552 pm->bootstart = part->mbrp_start; in md_check_mbr()
553 pm->bootsize = part->mbrp_size; in md_check_mbr()
571 if (!(pm->bootsize >= (MIN_FAT12_BOOT/512) || in md_check_mbr()
591 if (pm->bootsize > 0 && pm->bootsize < (MIN_FAT12_BOOT/512)) { in md_check_mbr()
599 if ((pm->bootstart == 0 || pm->bootsize == 0) && in md_check_mbr()
654 fd = opendisk(pm->diskdev, O_RDONLY, diskpath, sizeof(diskpath), 0); in check_rdb()