Up to [cvs.NetBSD.org] / src / usr.sbin / sysinst
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
When matching real partitions to "wanted" install descriptions, skip all types of special partitions (like raw disk, or the MBR container partition for the NetBSD part of the disk). The start of the partition is no unique identifier if we include these in the matching (e.g. boot partition and raw partition may both start at sector 0).
Pull up following revision(s) (requested by martin in ticket #30): usr.sbin/sysinst/bsddisklabel.c: revision 1.71 PR 57132: when calculation additional space available for the "expanded" partition (typically /) do not forget the reserved space (that might be required for the system/bootloader/other MD stuff).
PR 57132: when calculation additional space available for the "expanded" partition (typically /) do not forget the reserved space (that might be required for the system/bootloader/other MD stuff).
Switch back to FFSv2ea as default for new installations
Add an (expert) option to manually edit partitions, inspired by PR 57100.
Temporarily back out rev 1.66 and switch the default FFS type back to FFSv2 (w/o ea) for the upcoming netbsd-10 branch.
Pull up following revision(s) (requested by martin in ticket #1553): usr.sbin/sysinst/bsddisklabel.c: revision 1.67 A little less (confusing) magic: adjust the size of / when adding /usr only if / has not beenn manually resized.
A little less (confusing) magic: adjust the size of / when adding /usr only if / has not beenn manually resized.
Switch the default FFS type from FFSv2 to FFSv2ea - we want extended attribute support to be exercised and tested. If you want to share a new installed disk with older NetBSD installations or (read only) with other OSes you need to explicitly set the FS type to FFSv2 now.
Add support for FFSv2ea in the partition type menus (internally setting fs version to 3 for this, where 2 is FFSv2 and 1 is FFSv1)
Fix pasto.
fix various typos, mainly in comments.
fix various small typos, mainly in comments.
s/entires/entries/
fix various typos in comments and log messages.
PR 56303: do not borrow from the default swap allocation if we are in tiny ram conditions and will need to enable swap early.
PR 55991: when extending the marked partition (typically: the NetBSD root partition) round the new size up to current alignment. This may lead to a slightly smaller than initialy planned last partition (depending on order added) if the disk size is odd or the partitioning scheme needs some internal space (like GPT) - but it avoids gaps elsewhere due to alignement. Ideally we would pin all other partitions in a first pass and then let the partitioning backend pick the full available size for the extended partition, but this should be good enough.
sysinst: remove trailing whitespace from *.c *.h In contrast to the messages files, this whitespace is not significant.
Pull up following revision(s) (requested by martin in ticket #1113): usr.sbin/sysinst/bsddisklabel.c: revision 1.46 usr.sbin/sysinst/bsddisklabel.c: revision 1.47 usr.sbin/sysinst/disklabel.c: revision 1.40 usr.sbin/sysinst/arch/cobalt/md.c: revision 1.13 usr.sbin/sysinst/bsddisklabel.c: revision 1.48 usr.sbin/sysinst/disklabel.c: revision 1.41 usr.sbin/sysinst/arch/cobalt/md.c: revision 1.14 usr.sbin/sysinst/bsddisklabel.c: revision 1.49 usr.sbin/sysinst/disklabel.c: revision 1.42 usr.sbin/sysinst/Makefile.inc: revision 1.34 usr.sbin/sysinst/disks.c: revision 1.70 usr.sbin/sysinst/arch/hp300/md.c: revision 1.11 usr.sbin/sysinst/disks.c: revision 1.71 usr.sbin/sysinst/arch/i386/md.h: revision 1.8 usr.sbin/sysinst/arch/arc/md.c: revision 1.13 usr.sbin/sysinst/mbr.h: revision 1.5 usr.sbin/sysinst/mbr.h: revision 1.6 usr.sbin/sysinst/arch/mac68k/md.c: revision 1.10 usr.sbin/sysinst/bsddisklabel.c: revision 1.50 usr.sbin/sysinst/arch/acorn32/md.c: revision 1.7 usr.sbin/sysinst/bsddisklabel.c: revision 1.51 usr.sbin/sysinst/bsddisklabel.c: revision 1.52 usr.sbin/sysinst/bsddisklabel.c: revision 1.53 usr.sbin/sysinst/bsddisklabel.c: revision 1.54 usr.sbin/sysinst/bsddisklabel.c: revision 1.55 usr.sbin/sysinst/bsddisklabel.c: revision 1.56 usr.sbin/sysinst/arch/dummy/md.c: revision 1.6 usr.sbin/sysinst/arch/amd64/md.h: revision 1.9 usr.sbin/sysinst/arch/evbsh3/md.c: revision 1.6 usr.sbin/sysinst/arch/sparc/md.c: revision 1.6 usr.sbin/sysinst/arch/zaurus/md.c: revision 1.10 usr.sbin/sysinst/arch/x68k/md.c: revision 1.11 usr.sbin/sysinst/arch/sandpoint/md.c: revision 1.9 usr.sbin/sysinst/arch/vax/md.c: revision 1.7 usr.sbin/sysinst/arch/luna68k/md.c: revision 1.9 usr.sbin/sysinst/gpt.c: revision 1.19 usr.sbin/sysinst/arch/i386/md.c: revision 1.31 usr.sbin/sysinst/arch/i386/md.c: revision 1.32 usr.sbin/sysinst/arch/evbarm/md.c: revision 1.17 usr.sbin/sysinst/arch/evbarm/md.c: revision 1.18 usr.sbin/sysinst/arch/evbarm/md.c: revision 1.19 usr.sbin/sysinst/arch/shark/md.c: revision 1.6 usr.sbin/sysinst/arch/landisk/md.c: revision 1.14 usr.sbin/sysinst/util.c: revision 1.43 usr.sbin/sysinst/gpt.c: revision 1.20 usr.sbin/sysinst/util.c: revision 1.44 usr.sbin/sysinst/gpt.c: revision 1.21 usr.sbin/sysinst/gpt.c: revision 1.22 usr.sbin/sysinst/arch/evbarm/msg.md.en: revision 1.2 usr.sbin/sysinst/arch/ofppc/md.c: revision 1.11 usr.sbin/sysinst/util.c: revision 1.46 usr.sbin/sysinst/arch/ofppc/md.c: revision 1.12 usr.sbin/sysinst/util.c: revision 1.47 usr.sbin/sysinst/arch/evbarm/md.h: revision 1.6 usr.sbin/sysinst/util.c: revision 1.48 usr.sbin/sysinst/arch/evbarm/md.h: revision 1.7 usr.sbin/sysinst/arch/evbmips/md.c: revision 1.9 usr.sbin/sysinst/msg.mi.fr: revision 1.28 usr.sbin/sysinst/msg.mi.fr: revision 1.29 usr.sbin/sysinst/arch/sgimips/md.c: revision 1.9 usr.sbin/sysinst/arch/evbarm/Makefile: revision 1.3 usr.sbin/sysinst/msg.mi.de: revision 1.23 usr.sbin/sysinst/arch/hpcsh/md.c: revision 1.10 usr.sbin/sysinst/msg.mi.de: revision 1.24 usr.sbin/sysinst/install.c: revision 1.15 usr.sbin/sysinst/install.c: revision 1.16 usr.sbin/sysinst/arch/sparc64/md.c: revision 1.6 usr.sbin/sysinst/install.c: revision 1.17 usr.sbin/sysinst/install.c: revision 1.18 usr.sbin/sysinst/partitions.h: revision 1.16 usr.sbin/sysinst/install.c: revision 1.19 usr.sbin/sysinst/partitions.h: revision 1.17 usr.sbin/sysinst/arch/evbppc/md.c: revision 1.9 usr.sbin/sysinst/arch/playstation2/md.c: revision 1.9 usr.sbin/sysinst/partitions.h: revision 1.18 usr.sbin/sysinst/arch/hpcarm/md.c: revision 1.9 usr.sbin/sysinst/partitions.h: revision 1.19 usr.sbin/sysinst/msg.mi.es: revision 1.24 usr.sbin/sysinst/msg.mi.es: revision 1.25 usr.sbin/sysinst/msg.mi.es: revision 1.26 usr.sbin/sysinst/arch/zaurus/md.c: revision 1.9 usr.sbin/sysinst/target.c: revision 1.13 usr.sbin/sysinst/target.c: revision 1.14 usr.sbin/sysinst/part_edit.c: revision 1.17 usr.sbin/sysinst/part_edit.c: revision 1.18 usr.sbin/sysinst/msg.mi.fr: revision 1.30 usr.sbin/sysinst/arch/mvme68k/md.c: revision 1.11 usr.sbin/sysinst/part_edit.c: revision 1.19 usr.sbin/sysinst/msg.mi.fr: revision 1.31 usr.sbin/sysinst/arch/alpha/md.c: revision 1.9 usr.sbin/sysinst/msg.mi.en: revision 1.30 usr.sbin/sysinst/defs.h: revision 1.56 usr.sbin/sysinst/msg.mi.en: revision 1.31 usr.sbin/sysinst/defs.h: revision 1.57 usr.sbin/sysinst/msg.mi.en: revision 1.32 usr.sbin/sysinst/arch/amiga/md.c: revision 1.6 usr.sbin/sysinst/arch/hpcmips/md.c: revision 1.9 usr.sbin/sysinst/defs.h: revision 1.58 usr.sbin/sysinst/arch/cats/md.c: revision 1.5 usr.sbin/sysinst/defs.h: revision 1.59 usr.sbin/sysinst/arch/newsmips/md.c: revision 1.6 usr.sbin/sysinst/arch/pmax/md.c: revision 1.8 usr.sbin/sysinst/arch/mipsco/md.c: revision 1.8 usr.sbin/sysinst/part_edit.c: revision 1.20 usr.sbin/sysinst/part_edit.c: revision 1.21 usr.sbin/sysinst/arch/macppc/md.c: revision 1.6 usr.sbin/sysinst/part_edit.c: revision 1.22 usr.sbin/sysinst/part_edit.c: revision 1.23 usr.sbin/sysinst/part_edit.c: revision 1.24 usr.sbin/sysinst/defs.h: revision 1.60 usr.sbin/sysinst/arch/mac68k/Makefile: revision 1.3 usr.sbin/sysinst/defs.h: revision 1.61 usr.sbin/sysinst/defs.h: revision 1.63 usr.sbin/sysinst/defs.h: revision 1.64 usr.sbin/sysinst/defs.h: revision 1.65 usr.sbin/sysinst/label.c: revision 1.21 usr.sbin/sysinst/defs.h: revision 1.66 usr.sbin/sysinst/label.c: revision 1.22 usr.sbin/sysinst/defs.h: revision 1.67 usr.sbin/sysinst/label.c: revision 1.23 usr.sbin/sysinst/label.c: revision 1.24 usr.sbin/sysinst/label.c: revision 1.25 usr.sbin/sysinst/label.c: revision 1.26 usr.sbin/sysinst/label.c: revision 1.27 usr.sbin/sysinst/msg.mi.pl: revision 1.31 usr.sbin/sysinst/label.c: revision 1.28 usr.sbin/sysinst/msg.mi.pl: revision 1.32 usr.sbin/sysinst/label.c: revision 1.29 usr.sbin/sysinst/arch/atari/md.c: revision 1.7 usr.sbin/sysinst/disklabel.c: revision 1.36 usr.sbin/sysinst/disklabel.c: revision 1.37 usr.sbin/sysinst/disklabel.c: revision 1.38 usr.sbin/sysinst/disklabel.c: revision 1.39 usr.sbin/sysinst/arch/bebox/md.c: revision 1.9 usr.sbin/sysinst/mbr.c: revision 1.32 usr.sbin/sysinst/disks.c: revision 1.66 usr.sbin/sysinst/mbr.c: revision 1.33 usr.sbin/sysinst/disks.c: revision 1.67 usr.sbin/sysinst/mbr.c: revision 1.34 usr.sbin/sysinst/arch/emips/md.c: revision 1.9 usr.sbin/sysinst/disks.c: revision 1.68 usr.sbin/sysinst/partitions.c: revision 1.11 usr.sbin/sysinst/mbr.c: revision 1.35 usr.sbin/sysinst/disks.c: revision 1.69 usr.sbin/sysinst/mbr.c: revision 1.36 usr.sbin/sysinst/arch/hppa/md.c: revision 1.8 usr.sbin/sysinst/arch/prep/md.c: revision 1.13 usr.sbin/sysinst/label.c: revision 1.30 usr.sbin/sysinst/arch/ews4800mips/md.c: revision 1.7 usr.sbin/sysinst/main.c: revision 1.21 usr.sbin/sysinst/main.c: revision 1.22 usr.sbin/sysinst/main.c: revision 1.23 usr.sbin/sysinst/bsddisklabel.c: revision 1.40 usr.sbin/sysinst/main.c: revision 1.24 usr.sbin/sysinst/arch/cobalt/md.h: revision 1.6 usr.sbin/sysinst/bsddisklabel.c: revision 1.41 usr.sbin/sysinst/main.c: revision 1.25 usr.sbin/sysinst/arch/news68k/md.c: revision 1.7 usr.sbin/sysinst/bsddisklabel.c: revision 1.42 usr.sbin/sysinst/bsddisklabel.c: revision 1.43 usr.sbin/sysinst/bsddisklabel.c: revision 1.44 usr.sbin/sysinst/bsddisklabel.c: revision 1.45 Use strlcpy in a few places to guarnatee 0-terminated strings Rever previous: the d_packname in struct disklabel is not NUL terminated. Disable the warning instead. Do not force -Os optimization (unless SMALLPROG) Remove unused "rel" global variable and make the -r option a no-op. PR 55045: strlcpy(NULL, ..., 0) considered harmfull in some implementations. PR misc/54886: bump threshold for automatic/default creation of a tmpfs /tmp up slightly (to 384 MB ram). This will make sure the default install has a > 64 MB /tmp available (number pulled out of thin air, 64 MB is the minimum required by the ZFS tests). Don't depend on common symbol definitions. boardype should not be common. Redo the root-size-limit check again after we grew the root partition for kernel dumps. Auto-enable the /usr partition if it overflows. For all non-root partitions, default to FFSv2. When extending a partition (to fill the total disk size) do respect size limits. Do not suggest a size limited partition for extension by default. Minor tweak to previous: when forcing a /usr partition just to have an arbitrary extendable partition, still use its default size initially. At the end of a new installation save entropy. Ooops, backout previous - twice the entropy saving is not needed. Instead slightly improve the (slightly) hidden other code that already did it. PR 55202: disable swapping if we started it due to low ram it's "its" Remove "If you booted from a floppy" message Set HAVE_INSTALL_IMAGE for evbarm Change mountpoint of boot ext2fs from /stand to /ext2 to avoid conflict. Should be pulled up to netbsd-9, with fixes of PR/55060. MBR type for Ext2 should be MBR_PTYPE_LNXEXT2, not MBR_PTYPE_FAT12. Silence -Wstringop-truncation for ``name'' in disp_selected_part(). This variable is used only for display, and truncation seems harmless. PR 55572: avoid crash when answering the mount point prompt for a previously empty mount point with an emptry sting. When adding a new partition in the concrete partition editor, make sure to set a pointer to the partition table interface in the new entry. Otherwise we may end up not writing back the partitions at all, leading to further fallout later. Receipe to reproduce the issue from Frederic Fauberteau, thanks! In the concrete partitions editor, after deleting the last partition move the menu selection to the "add a partition" entry (instead of the sentinel line which is not an active menu entry). Typo in comment Keep a list of all partition tables from which we have deleted partitions and make sure we update those partition tables when writing partitions, even if no install related partition remains on them. Fix display of timezone selection menu If there is no current partitioning manager assume we are editing the current system and make target_already_root() return true. Fixes various fallout when using sysinst post installation. PR 55377: mark boot partitions in the partition size display, as suggested by Izumi Tsutsui (minor modifications + all bugs by me) PR 55378: do not assume RAW_PART to be either 2 or 3 PR 55379: avoid creating bogus /etc/fstab lines for /dev/cd* if no cdrom is available. PR 55381: try to deal with moved (but not yet saved) partitions when calculating free space Apply patch provided by Izumi Tsutsui in PR 55382: make ext2 partitions show up in the outer (MBR) partition table, needed for example on Cobalt where firmware boots from that partition. PR 55384: detangle pm->ptstart from the "install" flag (selecting a target partition). Instead introduce a new PTI_INSTALL_TARGET per partition flag and deal with it in the partitioning backends. Honour pm->ptstart when allocating new partitions - it is supposed to be the first sector usable by NetBSD. If we have no explicitly marke target root partition, make sure to set the proper flag on the implicit one. When merging existing partitions with desired target system layout information, only force the "mount" flag if the existing partitions has a valid mount point. Add a heuristic to detect and properly mark EFI system partitions when re-using pre-existing partitions. When MD code requests a reserved area (at the start of the disk) make sure to properly account for the "lost" space during all calculations and especially when expanding the main partition to fill the disk. Avoid using the global "pm" or a passed device descriptons when we are passing disk limits explicitly anyway. Simplify/fix a few rounding calculations. When creating new partitions for "full disk" use, pass a install target hint to the partitioning backend (for the outer NetBSD partition). Use an install target hint to mark a new partition active. When compiled with BOOTSEL support, also name the new partition "NetBSD". Remove more pm->ptstart abuse - calculate values localy where needed instead. Fix editing start and size of not yet existing outer partitions. Previously we abused pm->ptstart / pm->ptsize to pass the bounds of the NetBSD outer partition to the inner partition editor - but now this is not a valid assumption any more, so explicitly fix the bounds if an outer partition exists. Remove very strange code that special-cased MSDOS file systems and refused to newfs the partition (despite explicit request to do so) if it was mountable. Accidently carried over from a dim and distant past, before we had fsck_newfs. PR 55536: when we find existing partition tables and have alternative formats available, offer to delete partitions and create new ones from scratch (in some other or the same on-disk format). Minor fix to previous: fix condition when we offer the partition type switch - it makes sense even if the disk is partitioned but has no valid partitions. Before forcing MBR partitions into our disklabel, make sure they are not there yet - could happen in various paths when reusing existing partitions (or parts of that) - previously we would blindly duplicate identical partitions. Ooops, part of previous was not meant to be included yet When renumbering partitions (after deletions) be slightly more lax in matching, to cope with differences between MBR EFI partitions and disklabel MSDOS partitions. PR 55142: on popular demand bring back expert options to adjust the number of free inodes, block size and fragment size for FFS and LFS. Fix copy & pasto noticed by Jason Mitchell: change the type of a GPT partition via "gpt type" - not "gpt label". Fix copy & pasto (missing "again" label) Remove dead code Move MBR writing (if any) post disklabel writing, otherwise strange interactions happen. Properly convert partition default sizes in MB to number of sectors
PR 55142: on popular demand bring back expert options to adjust the number of free inodes, block size and fragment size for FFS and LFS.
Ooops, part of previous was not meant to be included yet
Before forcing MBR partitions into our disklabel, make sure they are not there yet - could happen in various paths when reusing existing partitions (or parts of that) - previously we would blindly duplicate identical partitions.
Minor fix to previous: fix condition when we offer the partition type switch - it makes sense even if the disk is partitioned but has no valid partitions.
PR 55536: when we find existing partition tables and have alternative formats available, offer to delete partitions and create new ones from scratch (in some other or the same on-disk format).
Previously we abused pm->ptstart / pm->ptsize to pass the bounds of the NetBSD outer partition to the inner partition editor - but now this is not a valid assumption any more, so explicitly fix the bounds if an outer partition exists.
When MD code requests a reserved area (at the start of the disk) make sure to properly account for the "lost" space during all calculations and especially when expanding the main partition to fill the disk. Avoid using the global "pm" or a passed device descriptons when we are passing disk limits explicitly anyway. Simplify/fix a few rounding calculations.
Add a heuristic to detect and properly mark EFI system partitions when re-using pre-existing partitions.
When merging existing partitions with desired target system layout information, only force the "mount" flag if the existing partitions has a valid mount point.
If we have no explicitly marke target root partition, make sure to set the proper flag on the implicit one.
PR 55384: detangle pm->ptstart from the "install" flag (selecting a target partition). Instead introduce a new PTI_INSTALL_TARGET per partition flag and deal with it in the partitioning backends. Honour pm->ptstart when allocating new partitions - it is supposed to be the first sector usable by NetBSD.
Apply patch provided by Izumi Tsutsui in PR 55382: make ext2 partitions show up in the outer (MBR) partition table, needed for example on Cobalt where firmware boots from that partition.
PR 55377: mark boot partitions in the partition size display, as suggested by Izumi Tsutsui (minor modifications + all bugs by me)
Keep a list of all partition tables from which we have deleted partitions and make sure we update those partition tables when writing partitions, even if no install related partition remains on them.
Minor tweak to previous: when forcing a /usr partition just to have an arbitrary extendable partition, still use its default size initially.
When extending a partition (to fill the total disk size) do respect size limits. Do not suggest a size limited partition for extension by default.
Redo the root-size-limit check again after we grew the root partition for kernel dumps. Auto-enable the /usr partition if it overflows. For all non-root partitions, default to FFSv2.
Mostly merge changes from HEAD upto 20200411
Pull up following revision(s) (requested by martin in ticket #693): usr.sbin/sysinst/arch/x68k/msg.md.en: revision 1.2 usr.sbin/sysinst/arch/x68k/md.c: revision 1.10 usr.sbin/sysinst/arch/mvme68k/msg.md.fr: revision 1.2 usr.sbin/sysinst/arch/x68k/msg.md.en: revision 1.3 usr.sbin/sysinst/arch/mvme68k/msg.md.fr: revision 1.3 usr.sbin/sysinst/msg.mi.en: revision 1.28 usr.sbin/sysinst/arch/hp300/md.c: revision 1.10 usr.sbin/sysinst/msg.mi.es: revision 1.22 usr.sbin/sysinst/target.c: revision 1.12 usr.sbin/sysinst/arch/mvme68k/md.c: revision 1.10 usr.sbin/sysinst/arch/i386/md.c: revision 1.30 usr.sbin/sysinst/arch/mvme68k/msg.md.pl: revision 1.2 usr.sbin/sysinst/arch/mvme68k/msg.md.pl: revision 1.3 usr.sbin/sysinst/bsddisklabel.c: revision 1.39 usr.sbin/sysinst/arch/mvme68k/msg.md.de: revision 1.2 usr.sbin/sysinst/arch/mac68k/md.c: revision 1.9 usr.sbin/sysinst/disklabel.c: revision 1.35 usr.sbin/sysinst/arch/mvme68k/msg.md.de: revision 1.3 usr.sbin/sysinst/defs.h: revision 1.55 usr.sbin/sysinst/disks.c: revision 1.63 usr.sbin/sysinst/disks.c: revision 1.64 usr.sbin/sysinst/mbr.c: revision 1.31 usr.sbin/sysinst/disks.c: revision 1.65 usr.sbin/sysinst/txtwalk.c: revision 1.3 usr.sbin/sysinst/txtwalk.c: revision 1.4 usr.sbin/sysinst/arch/mvme68k/msg.md.en: revision 1.2 usr.sbin/sysinst/arch/mvme68k/msg.md.en: revision 1.3 usr.sbin/sysinst/msg.mi.fr: revision 1.26 usr.sbin/sysinst/msg.mi.pl: revision 1.29 usr.sbin/sysinst/arch/mvme68k/msg.md.es: revision 1.2 usr.sbin/sysinst/upgrade.c: revision 1.15 usr.sbin/sysinst/arch/mvme68k/msg.md.es: revision 1.3 usr.sbin/sysinst/upgrade.c: revision 1.16 usr.sbin/sysinst/partman.c: revision 1.50 usr.sbin/sysinst/msg.mi.de: revision 1.21 remove unused "emptypart" message (or moved to ifdef notyet area) PR install/54921: message "ordering" takes a %s argument. PR install/54921: skip non-user partitions when checking for overlaps bootxx_name() - fix oversight in previous change (do not assume first partition is the root partition) PR install/54934: always use -f on the installboot invocation. We come here post-newfs (and maybe should have dd'd zeros to the start of the disk before newfs instead). Remove a bogus assert: when reading disklabel partitions and the outer (MBR) partitioning has changed, but the changes have not yet been written back to disk, we need to ignore the kernels idea of the disklabel and instead continue with an empty one. Deal with partitioning schemes having no inner counterpart. Avoid NULL derefs. Do not assum a partitioning scheme that supports innner partitions always needs to actually have such partitions defined. PR bin/54944: deal with escaped spaces in NAME= syntax in /etc/fstab. PR bin/54944: explicitly reject GPT protective MBRs. PR bin/54944: make the "explicit single wedge" selection also work for upgrades. Reformat a query to add an automatically detected swap partition so it fits on narrow screens. Make re-install sets also work for an explicit selected root wedge Fix copy&pasto in previous - from kre. Only a single partition can ever have the "extend" flag (grow to available size). Do not use -P for tar extractions - the in tree tar has been fixed. Finish conversion to generic partitioning backend
Only a single partition can ever have the "extend" flag (grow to available size).
Pull up following revision(s) (requested by martin in ticket #668): usr.sbin/sysinst/arch/cobalt/md.c: revision 1.11 usr.sbin/sysinst/arch/cobalt/md.c: revision 1.12 usr.sbin/sysinst/arch/arc/md.c: revision 1.11 usr.sbin/sysinst/arch/arc/md.c: revision 1.12 usr.sbin/sysinst/partman.c: revision 1.43 usr.sbin/sysinst/partman.c: revision 1.46 usr.sbin/sysinst/partman.c: revision 1.47 usr.sbin/sysinst/partman.c: revision 1.48 usr.sbin/sysinst/partman.c: revision 1.49 usr.sbin/sysinst/msg.pm.fr: revision 1.2 usr.sbin/sysinst/upgrade.c: revision 1.14 usr.sbin/sysinst/arch/i386/md.c: revision 1.28 usr.sbin/sysinst/arch/i386/md.c: revision 1.29 usr.sbin/sysinst/arch/ofppc/md.c: revision 1.9 usr.sbin/sysinst/arch/sandpoint/md.c: revision 1.7 usr.sbin/sysinst/arch/sandpoint/md.c: revision 1.8 usr.sbin/sysinst/gpt.c: revision 1.14 usr.sbin/sysinst/gpt.c: revision 1.15 usr.sbin/sysinst/arch/luna68k/md.c: revision 1.8 usr.sbin/sysinst/gpt.c: revision 1.16 usr.sbin/sysinst/msg.pm.de: revision 1.2 usr.sbin/sysinst/arch/evbarm/md.c: revision 1.11 usr.sbin/sysinst/arch/evbarm/md.c: revision 1.12 usr.sbin/sysinst/arch/evbarm/md.c: revision 1.13 usr.sbin/sysinst/arch/evbarm/md.c: revision 1.14 usr.sbin/sysinst/sizemultname.c: revision 1.4 usr.sbin/sysinst/msg.pm.en: revision 1.2 usr.sbin/sysinst/arch/landisk/md.c: revision 1.12 usr.sbin/sysinst/util.c: revision 1.41 usr.sbin/sysinst/arch/landisk/md.c: revision 1.13 usr.sbin/sysinst/util.c: revision 1.42 usr.sbin/sysinst/arch/ofppc/md.c: revision 1.10 usr.sbin/sysinst/partitions.c: revision 1.9 usr.sbin/sysinst/arch/evbarm/md.h: revision 1.4 usr.sbin/sysinst/arch/evbarm/md.h: revision 1.5 usr.sbin/sysinst/arch/evbmips/md.c: revision 1.7 usr.sbin/sysinst/arch/evbmips/md.c: revision 1.8 usr.sbin/sysinst/msg.mi.fr: revision 1.25 usr.sbin/sysinst/msg.mi.de: revision 1.20 usr.sbin/sysinst/install.c: revision 1.14 usr.sbin/sysinst/partitions.h: revision 1.13 usr.sbin/sysinst/partitions.h: revision 1.14 usr.sbin/sysinst/arch/evbppc/md.c: revision 1.7 usr.sbin/sysinst/arch/playstation2/md.c: revision 1.7 usr.sbin/sysinst/msg.mi.en: revision 1.27 usr.sbin/sysinst/partitions.h: revision 1.15 usr.sbin/sysinst/arch/evbppc/md.c: revision 1.8 usr.sbin/sysinst/arch/hpcarm/md.c: revision 1.7 usr.sbin/sysinst/arch/playstation2/md.c: revision 1.8 usr.sbin/sysinst/msg.pm.pl: revision 1.2 usr.sbin/sysinst/arch/hpcarm/md.c: revision 1.8 usr.sbin/sysinst/msg.mi.es: revision 1.21 usr.sbin/sysinst/arch/zaurus/md.c: revision 1.7 usr.sbin/sysinst/target.c: revision 1.11 usr.sbin/sysinst/arch/zaurus/md.c: revision 1.8 usr.sbin/sysinst/part_edit.c: revision 1.14 usr.sbin/sysinst/part_edit.c: revision 1.15 usr.sbin/sysinst/part_edit.c: revision 1.16 usr.sbin/sysinst/defs.h: revision 1.50 usr.sbin/sysinst/defs.h: revision 1.51 usr.sbin/sysinst/defs.h: revision 1.52 usr.sbin/sysinst/defs.h: revision 1.53 usr.sbin/sysinst/defs.h: revision 1.54 usr.sbin/sysinst/arch/hpcmips/md.c: revision 1.7 usr.sbin/sysinst/arch/hpcmips/md.c: revision 1.8 usr.sbin/sysinst/arch/hpcsh/md.c: revision 1.8 usr.sbin/sysinst/msg.pm.es: revision 1.2 usr.sbin/sysinst/arch/hpcsh/md.c: revision 1.9 usr.sbin/sysinst/label.c: revision 1.18 usr.sbin/sysinst/label.c: revision 1.19 usr.sbin/sysinst/net.c: revision 1.35 usr.sbin/sysinst/msg.mi.pl: revision 1.28 usr.sbin/sysinst/disklabel.c: revision 1.28 usr.sbin/sysinst/disklabel.c: revision 1.29 usr.sbin/sysinst/mbr.c: revision 1.24 usr.sbin/sysinst/disks.c: revision 1.59 usr.sbin/sysinst/mbr.c: revision 1.25 usr.sbin/sysinst/mbr.c: revision 1.26 usr.sbin/sysinst/mbr.c: revision 1.27 usr.sbin/sysinst/mbr.c: revision 1.28 usr.sbin/sysinst/label.c: revision 1.20 usr.sbin/sysinst/mbr.c: revision 1.29 usr.sbin/sysinst/bsddisklabel.c: revision 1.34 usr.sbin/sysinst/bsddisklabel.c: revision 1.35 usr.sbin/sysinst/bsddisklabel.c: revision 1.36 usr.sbin/sysinst/bsddisklabel.c: revision 1.37 usr.sbin/sysinst/disklabel.c: revision 1.30 usr.sbin/sysinst/bsddisklabel.c: revision 1.38 usr.sbin/sysinst/disklabel.c: revision 1.31 usr.sbin/sysinst/disklabel.c: revision 1.32 usr.sbin/sysinst/disklabel.c: revision 1.33 usr.sbin/sysinst/disklabel.c: revision 1.34 usr.sbin/sysinst/disks.c: revision 1.60 usr.sbin/sysinst/disks.c: revision 1.61 usr.sbin/sysinst/arch/bebox/md.c: revision 1.7 usr.sbin/sysinst/disks.c: revision 1.62 usr.sbin/sysinst/arch/bebox/md.c: revision 1.8 usr.sbin/sysinst/mbr.c: revision 1.30 usr.sbin/sysinst/partitions.c: revision 1.10 usr.sbin/sysinst/arch/prep/md.c: revision 1.11 usr.sbin/sysinst/arch/prep/md.c: revision 1.12 usr.sbin/sysinst/menus.pm: revision 1.3 usr.sbin/sysinst/main.c: revision 1.20 usr.sbin/sysinst/menus.mi: revision 1.20 usr.sbin/sysinst/menus.mi: revision 1.21 avoid calling snprintf/strlcat with an input parameter the same as the output. from martin@. fixes gcc 8 restrict warnings. Finish conversion of extended partitioning parts to new abstract backend interface. XXX still could use a lot of polishing. Instead of a (bogus) attempt to query the model via ofctl, use the (now fixed) sysctl hw.model instead. When reading the secondary disklabel partitions from an existing disklabel set the mbr partitions as parent. Move the LABELSECTOR check and make it FS type specific - some partition types (FFS, RAID) are allowed to overlap with the LABELSECTOR. When asked to create a whole-disk partition for unknown usage, do not only assert(false), but actually return an error (in case "assert" is a nop). PR install/54787: when trying to derive proper alignement and first offset from exisiting partitions, use the first partition offset if it is already closer to the start of the disk than the prefered alignment - we can not move existing partitions around. Fix handling of inner/outer partitions (e.g. MBR and disklabel) in extended partitioning: - when editing a disk with such a schme, offer both partitions in two steps - when commiting changes save the inner partitions after the outer ones Add a method to query the partitioning schemes "internal idea" of a cylinder size - whatever that means in the real world. Avoid using the global "pm" variable in utility functions - during extended partitioning they may point to a different device. Remove useless calls to get_ramsize() - return value is ignored and the function has no side effects. Fix /tmp tmpfs handling and on machines with enough RAM default to creating a /tmp tmpfs with 25% of ram size limit. Suggested by ad@. PR install/54872: fix printf argument order, sectors and heads were swapped in the bios geometry display. First try to bring evbarm installation closer to current reality. hide disklabel_non_bootable() under NO_DISKLABEL_BOOT like the usage. should fix most builds. Deal with even stranger fictious empty disklabels (PR kern/54882). Factor out all RAM size thresholds as defines to avoid magic numbers. To work around PR misc/54886 bump the threshold for a tmpfs /tmp mount up to 256 MB. When retrying sets during extraction, reset the relevant statistics to avoid counting retried sets multiple times. Reported by kim. Fix support for non-512-byte/sector disks again after I broke it when introducing the abstract partition backends. Use a few strlcpy() instead of strncpy() for network ioctl structs. We seem to have no formal documentation stating the various char if*_name[IFNAMSIZ]; /* if name, e.g. "en0" */ elements in ioctls are nul terminated, but the peanut gallery claims it is so - and at least half of the code in-tree touching them agrees. Too much disklabel magic happening in the kernel - to compensate force MBR first when trying to identify the existing partitioning scheme of a disk.
Fix support for non-512-byte/sector disks again after I broke it when introducing the abstract partition backends.
Factor out all RAM size thresholds as defines to avoid magic numbers. To work around PR misc/54886 bump the threshold for a tmpfs /tmp mount up to 256 MB.
First try to bring evbarm installation closer to current reality.
Fix /tmp tmpfs handling and on machines with enough RAM default to creating a /tmp tmpfs with 25% of ram size limit. Suggested by ad@.
Finish conversion of extended partitioning parts to new abstract backend interface. XXX still could use a lot of polishing.
Pull up following revision(s) (requested by martin in ticket #560): usr.sbin/sysinst/partitions.h: revision 1.11 usr.sbin/sysinst/defs.h: revision 1.49 usr.sbin/sysinst/mbr.c: revision 1.23 usr.sbin/sysinst/msg.mi.en: revision 1.26 usr.sbin/sysinst/disks.c: revision 1.58 usr.sbin/sysinst/arch/evbarm/menus.md.pl: revision 1.2 usr.sbin/sysinst/msg.mi.es: revision 1.20 usr.sbin/sysinst/arch/mvme68k/md.c: revision 1.9 usr.sbin/sysinst/gpt.c: revision 1.13 usr.sbin/sysinst/arch/evbarm/md.c: revision 1.10 usr.sbin/sysinst/arch/arc/md.c: revision 1.10 usr.sbin/sysinst/disklabel.c: revision 1.18 usr.sbin/sysinst/bsddisklabel.c: revision 1.33 usr.sbin/sysinst/disklabel.c: revision 1.19 usr.sbin/sysinst/main.c: revision 1.19 usr.sbin/sysinst/partman.c: revision 1.45 usr.sbin/sysinst/arch/alpha/md.c: revision 1.7 usr.sbin/sysinst/msg.mi.de: revision 1.19 usr.sbin/sysinst/arch/evbarm/menus.md.en: revision 1.2 usr.sbin/sysinst/arch/x68k/md.h: revision 1.4 usr.sbin/sysinst/arch/x68k/md.c: revision 1.9 usr.sbin/sysinst/arch/evbarm/menus.md.es: revision 1.2 usr.sbin/sysinst/wskbd.c: revision 1.4 usr.sbin/sysinst/label.c: revision 1.15 usr.sbin/sysinst/arch/amiga/md.h: revision 1.5 usr.sbin/sysinst/label.c: revision 1.16 usr.sbin/sysinst/arch/hp300/md.c: revision 1.9 usr.sbin/sysinst/arch/emips/md.c: revision 1.8 usr.sbin/sysinst/label.c: revision 1.17 usr.sbin/sysinst/arch/pmax/md.c: revision 1.7 usr.sbin/sysinst/partitions.c: revision 1.6 usr.sbin/sysinst/arch/prep/md.c: revision 1.10 usr.sbin/sysinst/arch/mipsco/md.c: revision 1.7 usr.sbin/sysinst/partitions.c: revision 1.7 usr.sbin/sysinst/partitions.c: revision 1.8 usr.sbin/sysinst/arch/ews4800mips/md.c: revision 1.5 usr.sbin/sysinst/disklabel.c: revision 1.20 usr.sbin/sysinst/arch/evbarm/menus.md.fr: revision 1.2 usr.sbin/sysinst/msg.mi.fr: revision 1.24 usr.sbin/sysinst/disklabel.c: revision 1.21 usr.sbin/sysinst/partitions.h: revision 1.9 usr.sbin/sysinst/msg.mi.pl: revision 1.27 usr.sbin/sysinst/disklabel.c: revision 1.22 usr.sbin/sysinst/disklabel.c: revision 1.23 usr.sbin/sysinst/arch/i386/md.c: revision 1.27 usr.sbin/sysinst/disklabel.c: revision 1.24 usr.sbin/sysinst/disklabel.c: revision 1.25 usr.sbin/sysinst/arch/cobalt/md.h: revision 1.5 usr.sbin/sysinst/disklabel.c: revision 1.26 usr.sbin/sysinst/disklabel.c: revision 1.27 usr.sbin/sysinst/partitions.h: revision 1.10 usr.sbin/sysinst/arch/cobalt/md.c: revision 1.10 PR install/54582: allow MD code to disable on-disk presence verification of "real" disklabels. Auto-enable this (at run time) when there is no other partitioning scheme but disklabel configured. Hard-coded enable this for x68k to allow using kernel based translations for native Human68k partitions. Get rid of the evbarm preliminary menu: do not bother to ask the user whether this is a RPi - query the FDT instead. PR 54065: add optional "old compat" variant of ext2fs in file system type selection and use that as default for the cobalt boot file system. For now rely on the kernel mapping native RDB partitions. Fix detection of existing disklabels in the case when we only have the disklabel partitioning scheme available. Fix DISKLABEL_NO_ONDISK_VERIFY (accidently disabled in previous) Fix inverted comparison Do not try to change the keyboard layout if we are not running on the console. When trying to tell a fictious but empty label from a real one, skip partition a if it has the same start and size as the raw partition. Remove bogus assert. When finding (paritioning scheme native) partition types for file systems from our install description, pass the partition type (not only the file system type). Sometimes (e.g. EFI boot partition on GPT) the filesystem type (MSDOS) is not a unique selector. Adapt MD parts to changes in get_fs_part_type (pass partition type). If a fictious label has no RAW_PART assume there is no valid disk label. Pass proper track size when initializing the default alignment - this is important with sunlabels. Fix overlapping partitions display Reject (what we consider) empty/invalid fake disklabels no matter whether we have other partitioning schemes available or not. Do not show disklabel command invocation by default (only if there are errors). After installing boot blocks with RUN_NO_CLEAR (and handling the potential errors) make sure to clear the stdscreen.
When finding (paritioning scheme native) partition types for file systems from our install description, pass the partition type (not only the file system type). Sometimes (e.g. EFI boot partition on GPT) the filesystem type (MSDOS) is not a unique selector.
Pull up following revision(s) (requested by martin in ticket #538): usr.sbin/sysinst/bsddisklabel.c: revision 1.32 PR install/54745: fix confusion about absolut and NetBSD-partition relative offsets.
PR install/54745: fix confusion about absolut and NetBSD-partition relative offsets.
Pull up following revision(s) (requested by martin in ticket #436): usr.sbin/sysinst/disks.c: revision 1.55 usr.sbin/sysinst/msg.mi.en: revision 1.24 usr.sbin/sysinst/mbr.c: revision 1.22 usr.sbin/sysinst/disks.c: revision 1.56 usr.sbin/sysinst/msg.mi.en: revision 1.25 usr.sbin/sysinst/disks.c: revision 1.57 usr.sbin/sysinst/arch/playstation2/msg.md.pl: revision 1.3 usr.sbin/sysinst/Makefile.inc: revision 1.30 usr.sbin/sysinst/configmenu.c: revision 1.11 usr.sbin/sysinst/util.c: revision 1.35 usr.sbin/sysinst/gpt.c: revision 1.12 usr.sbin/sysinst/util.c: revision 1.36 usr.sbin/sysinst/arch/playstation2/msg.md.de: revision 1.3 usr.sbin/sysinst/arch/i386/menus.md: revision 1.3 usr.sbin/sysinst/util.c: revision 1.37 usr.sbin/sysinst/part_edit.c: revision 1.11 usr.sbin/sysinst/arch/i386/msg.md.en: revision 1.2 usr.sbin/sysinst/util.c: revision 1.38 usr.sbin/sysinst/part_edit.c: revision 1.12 usr.sbin/sysinst/arch/i386/msg.md.en: revision 1.3 usr.sbin/sysinst/util.c: revision 1.39 usr.sbin/sysinst/part_edit.c: revision 1.13 usr.sbin/sysinst/arch/i386/msg.md.en: revision 1.4 usr.sbin/sysinst/disklabel.c: revision 1.15 usr.sbin/sysinst/bsddisklabel.c: revision 1.30 usr.sbin/sysinst/arch/i386/msg.md.es: revision 1.2 usr.sbin/sysinst/bsddisklabel.c: revision 1.31 usr.sbin/sysinst/arch/i386/msg.md.es: revision 1.3 usr.sbin/sysinst/arch/i386/msg.md.es: revision 1.4 usr.sbin/sysinst/mbr.h: revision 1.4 usr.sbin/sysinst/main.c: revision 1.18 usr.sbin/sysinst/partman.c: revision 1.44 usr.sbin/sysinst/msg.mi.de: revision 1.17 usr.sbin/sysinst/arch/i386/msg.md.fr: revision 1.2 usr.sbin/sysinst/msg.mi.de: revision 1.18 usr.sbin/sysinst/arch/i386/msg.md.fr: revision 1.3 usr.sbin/sysinst/arch/playstation2/msg.md.en: revision 1.3 usr.sbin/sysinst/arch/i386/msg.md.fr: revision 1.4 usr.sbin/sysinst/arch/amd64/md.c: revision 1.2 usr.sbin/sysinst/arch/ews4800mips/Makefile: revision 1.3 usr.sbin/sysinst/arch/playstation2/msg.md.es: revision 1.3 usr.sbin/sysinst/label.c: revision 1.13 usr.sbin/sysinst/Makefile.inc: revision 1.29 usr.sbin/sysinst/label.c: revision 1.14 usr.sbin/sysinst/util.c: revision 1.40 usr.sbin/sysinst/partitions.c: revision 1.5 usr.sbin/sysinst/arch/amd64/md.h: revision 1.8 usr.sbin/sysinst/msg.mi.es: revision 1.18 usr.sbin/sysinst/net.c: revision 1.34 usr.sbin/sysinst/msg.mi.es: revision 1.19 usr.sbin/sysinst/arch/i386/msg.md.pl: revision 1.2 usr.sbin/sysinst/arch/i386/md.c: revision 1.22 usr.sbin/sysinst/msg.mi.fr: revision 1.22 usr.sbin/sysinst/arch/playstation2/msg.md.fr: revision 1.3 usr.sbin/sysinst/arch/i386/msg.md.pl: revision 1.3 usr.sbin/sysinst/arch/i386/md.c: revision 1.23 usr.sbin/sysinst/msg.mi.pl: revision 1.25 usr.sbin/sysinst/msg.mi.fr: revision 1.23 usr.sbin/sysinst/arch/i386/msg.md.pl: revision 1.4 usr.sbin/sysinst/arch/i386/md.c: revision 1.24 usr.sbin/sysinst/partitions.h: revision 1.8 usr.sbin/sysinst/msg.mi.pl: revision 1.26 usr.sbin/sysinst/arch/i386/msg.md.de: revision 1.2 usr.sbin/sysinst/arch/i386/msg.md.de: revision 1.3 usr.sbin/sysinst/arch/i386/msg.md.de: revision 1.4 usr.sbin/sysinst/run.c: revision 1.13 usr.sbin/sysinst/defs.h: revision 1.46 usr.sbin/sysinst/install.c: revision 1.12 usr.sbin/sysinst/defs.h: revision 1.47 usr.sbin/sysinst/install.c: revision 1.13 usr.sbin/sysinst/defs.h: revision 1.48 Add options to the various partitioning stages that allow cloning of alien partitions (optionally including data). PR 54467: we trust our own sets, extract them with -P to allow symlink redirection (especially for updates and chroot services - back out once a better solution for those is implemented) Make cloning support optional, so we can save some space on very small install media. Drop MBR and cloning support on crunched install media. Make tar extraction flags depend on our usage of pax-as-tar or bsdtar. Fix missing newlines in bios match display, pointed out by maxv. Drop unused variable. Fix table of bios geomatries knf style adjustments Make the bootblock selection menu more sane, pointed out by maxv Make sure all menus have a translatable exit option (or none at all). On amd64 support installation with a KASLR kernel, via "custom install" and selecting the GENERIC_KASLR kernel set. Setup /prekern and boot.cfg accordingly.
Make cloning support optional, so we can save some space on very small install media.
Add options to the various partitioning stages that allow cloning of alien partitions (optionally including data).
Pull up following revision(s) (requested by martin in ticket #382): usr.sbin/sysinst/part_edit.c: revision 1.10 usr.sbin/sysinst/part_edit.c: revision 1.9 usr.sbin/sysinst/partitions.c: revision 1.3 usr.sbin/sysinst/partitions.c: revision 1.4 usr.sbin/sysinst/partitions.h: revision 1.7 usr.sbin/sysinst/bsddisklabel.c: revision 1.29 usr.sbin/sysinst/disks.c: revision 1.54 Honor the "no_mbr" flag (used especially for raid and xbd devices) On device where we do not want a MBR (raid, xbd) skip the MBR partitioning scheme when trying to read partitions from disk. The generic reader will fall back to disklabel then. In non-MBR specific files, #ifdef all tests for MBR for architectures that do not even compile in MBR support.
Honor the "no_mbr" flag (used especially for raid and xbd devices)
Pull up following revision(s) (requested by martin in ticket #365): usr.sbin/sysinst/bsddisklabel.c: revision 1.28 usr.sbin/sysinst/disks.c: revision 1.53 Skip unwanted (zero sized) partitions.
Skip unwanted (zero sized) partitions.
Pull up following revision(s) (requested by martin in ticket #130): usr.sbin/sysinst/bsddisklabel.c: revision 1.27 Remove dead (#if 0) code.
Remove dead (#if 0) code.
Pull up following revision(s) (requested by martin in ticket #6): usr.sbin/sysinst/bsddisklabel.c: revision 1.26 If we can not fit a planned partition, retry with a bit more slope in size.
Pull up following revision(s) (requested by martin in ticket #5): usr.sbin/sysinst/bsddisklabel.c: revision 1.24 usr.sbin/sysinst/bsddisklabel.c: revision 1.25 PR 54423: fix handling of user defined partitions PR 54423: complete initialization of install info for user defined partitions
If we can not fit a planned partition, retry with a bit more slope in size.
PR 54423: complete initialization of install info for user defined partitions
PR 54423: fix handling of user defined partitions
If available, show additional names of foreign partitions in the size menu. Makes installing on machines with other OSes installed a lot less confusing.
When merging existing partitions into the planned installation partitions, keep the separation between the original planned partitions and the pre-exiting partitions. Also do not call found partitions "outer" if they are not (but could be)
Don't overwrite the filesystem type unconditionally with the FFSv1 or v2 setup for an architectures default - now we have /tmp on tmpfs back.
Don't force mounting of newfs'd partitions. Provide MD hooks for setups where we do not need any bootblocks.
When adding non-disklabel boot partitions (or similar), distinguish between ones we need to add to the outer (MBR) partitions, or copy over to the inner (disklabel) partitions.
When we are going to create (and populate) a new boot partition, we should newfs and mount it. Fix arguments to the MD_PART_DEFAULTS macro and invoke it a bit earlier (before we shift things around).
When checking for existing NetBSD partitions skip extended MBR and disklabel raw partitions.
no need to initialize fields that are already 0.
Avoid creating a (tiny) swap partition by default on overall too small disks.
mount is an array and can't be NULL (rin)
Use _fmt_ msg_ methods when formats are needed.
When setting up a "use whole disk" single outer partition, force an empty set of inner partitions immediately, This avoids reading old (stale) partitions (e.g. disklabel that survived cleaning and re-creating the MBR with the MBR NetBSD partition starting at the same offset) later.
When merging existing partitions into our install description, mark them as to-be-mounted.
Do not use dynamic size adjustments on install descriptions based on existing partitions - we need to keep them fixed to not confuse free space calculation.
Rework internal data structures and "interfaces to user interface" functions to get rid of all disklabel assumptions. Previously (even for GPT partitioning) struct disklabel was used, which obviously breaks large disk setups. Also many MD parts and parts of the user interface assumed (a) a struct disklabel is used internally to store partitioning information and (b) partitions are named 'a' ... $MAXPART. Get rid of this and replace it with a quite abstract interface that should be able to deal with all variants in partition storage: - partitions are stored in a (partly abstract) struct disk_partitions and most parts of it are only accessed via accessor functions provided by a "partitioning scheme". - implement partitioning schemes for MBR, disklabel and GPT (with likely RDB [amiga] and Apple Partition Map [mac*] to follow soon) - partitioning schemes may be cascaded, e.g. on x86 when using MBR as "outer partitions", we have disklabel as "inner partitions". - all user interface goes via accessor functions in the partitioning scheme, some of which return pointers to special user interface descriptors (e.g. to allow editing partition flags, which are scheme specific) Overall the user interface changes (in this initial step) are minimal but noticable. A new Anita is needed for automatic test setups - many thanks to Andreas Gustafsson for lots of early testing and a new Anita version, and to Manuel Bouyer for cooperation and tests of the Anita release. This work was sponsored by The NetBSD Foundation, Inc.
Sync with HEAD
Backout previous snprintf nonsense, instead STFU gcc 7's most useless warning ever.
Fix a few off by one (in both directions) in previous, pointed out by mrg. Avoid open coding snprintf return value checking and introduce a helper functions that always ensures string termination instead, suggested by christos.
Sync with HEAD, resolve a couple of conflicts
Convert all static menu struct initializiations to C99 name initializer format - prerequisite for an upcoming evil hack (tm). No functional change intended.
Make use of the new positional parameters to better describe the first partitioning step. Remove size limits/hints encoded in the translations and replace them by values from the code.
Sync with HEAD
Pull up following revision(s) (requested by joerg in ticket #869): usr.sbin/sysinst/arch/mvme68k/md.c: revision 1.5 usr.sbin/sysinst/net.c: revision 1.24 usr.sbin/sysinst/partman.c: revision 1.22 usr.sbin/sysinst/menus.mi: revision 1.12 usr.sbin/sysinst/arch/i386/md.c: revision 1.8 usr.sbin/sysinst/arch/alpha/md.c: revision 1.3 usr.sbin/sysinst/bsddisklabel.c: revision 1.3 usr.sbin/sysinst/arch/x68k/md.c: revision 1.5 usr.sbin/sysinst/arch/hp300/md.c: revision 1.5 usr.sbin/sysinst/arch/emips/md.c: revision 1.4 usr.sbin/sysinst/arch/pmax/md.c: revision 1.3 usr.sbin/sysinst/arch/mipsco/md.c: revision 1.3 usr.sbin/sysinst/arch/hppa/md.c: revision 1.3 usr.sbin/sysinst/util.c: revision 1.8 usr.sbin/sysinst/defs.h: revision 1.10 usr.sbin/sysinst/arch/landisk/md.c: revision 1.4 deconst -> __UNCONST, the former involves UB with NULL arithmetic.
Pull up following revision(s) (requested by martin in ticket #860): usr.sbin/sysinst/msg.mi.de: revision 1.7 usr.sbin/sysinst/arch/i386/md.c: revision 1.10 usr.sbin/sysinst/msg.mi.fr: revision 1.10 usr.sbin/sysinst/arch/i386/md.c: revision 1.11 usr.sbin/sysinst/menus.mi: revision 1.13 usr.sbin/sysinst/arch/i386/md.c: revision 1.9 usr.sbin/sysinst/msg.mi.es: revision 1.7 usr.sbin/sysinst/msg.mi.en: revision 1.11 usr.sbin/sysinst/mbr.c: revision 1.6 usr.sbin/sysinst/disks.c: revision 1.15 usr.sbin/sysinst/bsddisklabel.c: revision 1.4 usr.sbin/sysinst/disks.c: revision 1.16 usr.sbin/sysinst/msg.mi.pl: revision 1.9 usr.sbin/sysinst/defs.h: revision 1.11 Add an option to install onto a pre-configured wedge. Greatly simmplifies (U)EFI setups (but does not fully automate them yet). In the generated /etc/fstab, do not use the (temporary, during sysinst) path name for the file in the comment, but instead the one it will have on the target system. Reorder fetch options: http before ftp Default console device and speed to that used by syinst add missing brace.
Add an option to install onto a pre-configured wedge. Greatly simmplifies (U)EFI setups (but does not fully automate them yet).
Sync with HEAD
deconst -> __UNCONST, the former involves UB with NULL arithmetic.
Rebase to HEAD as of a few days ago.
Rebase.
file bsddisklabel.c was added on branch tls-maxphys on 2014-08-20 00:05:13 +0000
file bsddisklabel.c was added on branch tls-earlyentropy on 2014-08-10 07:00:24 +0000
(Finally) merge a slightly modified version of the 2012 GSoC results from Eugene Lozovoy: add extended partitioning options to sysinst. Still needs some testing and polishing, but it now is possible to use GPT or to create a RAID set from scratch and install onto it.
Move sysinst sources to usr.sbin. This commit only physically moves the sources - there are no other changes, to maximize the probability that this will be treated as a rename if we ever do manage to migrate away from CVS. Moving sysinst has been discussed on and off for years and has two goals: making it easier to work on sysinst, and also making sysinst available on running systems for use installing chroots and VM images and other such things. None of the latter is possible yet, but as they say, one thing at a time. Doing this now was approved in an impromptu fashion by mrg, riz, riastradh, me, and groo.