Up to [cvs.NetBSD.org] / src / usr.sbin / sysinst
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
Pull up following revision(s) (requested by martin in ticket #1427): usr.sbin/sysinst/defs.h: revision 1.80 usr.sbin/sysinst/target.c: revision 1.18 usr.sbin/sysinst/arch/i386/md.c: revision 1.35 x86: fix previous: in the UEFI case copy the bootloaders from install media during initial installation, but use the (by then: updated) files from the target disk for system upgrades.
x86: fix previous: in the UEFI case copy the bootloaders from install media during initial installation, but use the (by then: updated) files from the target disk for system upgrades.
Pull up following revision(s) (requested by martin in ticket #1422): usr.sbin/sysinst/util.c: revision 1.64 usr.sbin/sysinst/arch/hpcsh/md.c: revision 1.11 usr.sbin/sysinst/arch/alpha/md.c: revision 1.10 usr.sbin/sysinst/arch/sparc64/md.c: revision 1.7 usr.sbin/sysinst/arch/emips/md.c: revision 1.10 usr.sbin/sysinst/arch/cobalt/md.c: revision 1.15 usr.sbin/sysinst/arch/x68k/md.c: revision 1.12 usr.sbin/sysinst/arch/sandpoint/md.c: revision 1.10 usr.sbin/sysinst/arch/luna68k/md.c: revision 1.10 usr.sbin/sysinst/arch/hp300/md.c: revision 1.12 usr.sbin/sysinst/arch/vax/md.c: revision 1.8 usr.sbin/sysinst/arch/hpcmips/md.c: revision 1.10 usr.sbin/sysinst/target.c: revision 1.16 usr.sbin/sysinst/arch/mvme68k/md.c: revision 1.12 usr.sbin/sysinst/arch/arc/md.c: revision 1.14 usr.sbin/sysinst/target.c: revision 1.17 usr.sbin/sysinst/arch/i386/md.c: revision 1.34 usr.sbin/sysinst/arch/mac68k/md.c: revision 1.11 usr.sbin/sysinst/arch/atari/md.c: revision 1.8 usr.sbin/sysinst/arch/sgimips/md.c: revision 1.10 usr.sbin/sysinst/arch/acorn32/md.c: revision 1.8 usr.sbin/sysinst/install.c: revision 1.22 usr.sbin/sysinst/arch/amiga/md.c: revision 1.7 usr.sbin/sysinst/arch/cats/md.c: revision 1.6 usr.sbin/sysinst/arch/dummy/md.c: revision 1.7 usr.sbin/sysinst/arch/shark/md.c: revision 1.7 usr.sbin/sysinst/arch/pmax/md.c: revision 1.9 usr.sbin/sysinst/arch/newsmips/md.c: revision 1.7 usr.sbin/sysinst/arch/mipsco/md.c: revision 1.9 usr.sbin/sysinst/arch/landisk/md.c: revision 1.15 usr.sbin/sysinst/arch/hppa/md.c: revision 1.9 usr.sbin/sysinst/arch/prep/md.c: revision 1.14 usr.sbin/sysinst/defs.h: revision 1.77 usr.sbin/sysinst/arch/ofppc/md.c: revision 1.13 usr.sbin/sysinst/arch/ews4800mips/md.c: revision 1.8 usr.sbin/sysinst/defs.h: revision 1.78 usr.sbin/sysinst/arch/macppc/md.c: revision 1.7 usr.sbin/sysinst/arch/evbppc/md.c: revision 1.10 usr.sbin/sysinst/defs.h: revision 1.79 usr.sbin/sysinst/gpt.c: revision 1.27 usr.sbin/sysinst/arch/bebox/md.c: revision 1.10 usr.sbin/sysinst/gpt.c: revision 1.28 usr.sbin/sysinst/arch/sparc/md.c: revision 1.7 usr.sbin/sysinst/arch/evbsh3/md.c: revision 1.7 usr.sbin/sysinst/arch/evbarm/md.c: revision 1.22 usr.sbin/sysinst/arch/news68k/md.c: revision 1.8 usr.sbin/sysinst/upgrade.c: revision 1.19 usr.sbin/sysinst/arch/zaurus/md.c: revision 1.12 usr.sbin/sysinst/arch/playstation2/md.c: revision 1.10 usr.sbin/sysinst/arch/hpcarm/md.c: revision 1.11 usr.sbin/sysinst/arch/evbmips/md.c: revision 1.10 usr.sbin/sysinst/main.c: revision 1.28 Add an option to set the directory where we look for message catalogs. Try to get rid of all wedges we created (after unmounting). When upgrading, update the boot code post extraction from the updated target file system. Do not defer wedge deletions when we have nothing mounted. Define and use a constant for maximum disk name length.
Do not defer wedge deletions when we have nothing mounted. Define and use a constant for maximum disk name length.
Try to get rid of all wedges we created (after unmounting).
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
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.
Mostly merge changes from HEAD upto 20200411
Use strlcpy in a few places to guarnatee 0-terminated strings
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
Do not assum a partitioning scheme that supports innner partitions always needs to actually have such partitions defined.
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.
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 #28): usr.sbin/sysinst/disklabel.c: revision 1.11 usr.sbin/sysinst/target.c: revision 1.10 usr.sbin/sysinst/disks.c: revision 1.47 usr.sbin/sysinst/txtwalk.c: revision 1.2 usr.sbin/sysinst/partitions.h: revision 1.5 usr.sbin/sysinst/txtwalk.h: revision 1.2 usr.sbin/sysinst/arch/ews4800mips/md.h: revision 1.4 usr.sbin/sysinst/gpt.c: revision 1.9 usr.sbin/sysinst/defs.h: revision 1.43 Support upgrade of systems using NAME= syntax in /etc/fstab. Make supported file system types dynamic - instead of hardcoding the available types at compile time, check for available newfs_* helper binaries in the actual install environment at runtime.
Support upgrade of systems using NAME= syntax in /etc/fstab. Make supported file system types dynamic - instead of hardcoding the available types at compile time, check for available newfs_* helper binaries in the actual install environment at runtime.
Pull up following revision(s) (requested by martin in ticket #4): usr.sbin/sysinst/target.c: revision 1.9 usr.sbin/sysinst/disks.c: revision 1.45 usr.sbin/sysinst/label.c: revision 1.11 Do not strip the trailing / on root mounts when evaluation "last mounted on". Fix some /dev/ and raw vs. block device confusion on system upgrades.
Do not strip the trailing / on root mounts when evaluation "last mounted on". Fix some /dev/ and raw vs. block device confusion on system upgrades.
For upgrade / re-install allow the currently running system as a target in the "disk" selection.
When searching for a partition that may be the root partition for upgrading, allow "/", "/targetroot" and "/altroot" as potential last mount points.
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.
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
Sync with HEAD, resolve a couple of conflicts
Fix test for active root partition when booting from a wedge
Pull up following revision(s) (requested by martin in ticket #1008): usr.sbin/sysinst/target.c: revision 1.3 PR 50342: if there is no current partition manage, assume we are running from an already installed system.
PR 50342: if there is no current partition manage, assume we are running from an already installed system.
Rebase to HEAD as of a few days ago.
Rebase.
file target.c was added on branch tls-maxphys on 2014-08-20 00:05:14 +0000
file target.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.