boot image sizes for 9.x

T <[email protected]> Thu, 10 Jun 2021 01:18:49 -0600
Newsgroups gmane.os.netbsd.ports.prep
Message-ID <[email protected]>
The install boot image (sysinst.fs) is, as of 9.0, too large to boot on 
the 43p 7248. This has also carried over to NetBSD 9.2, which causes the 
ISO to no longer boot, since that image is used in building the bootable 
section of the ISO. As mentioned in some prior posts here, there seems 
to be a 2MiB limitation on the boot image size. I can confirm sysinst.fs 
does not work (boots to black screen, with blinking white cursor in the 
top-left) and also that sysinst_small.fs does work. I tested these 
images through the firmware net boot feature.

The boot images may need to be reworked if the 2MiB limit is indeed a 
hard limitation of the firmware or hardware. The generic.fs image is not 
really useful at this point in time, since it cannot be booted and the 
GENERIC kernel configuration is ideal for the fully featured, secondary 
kernel, and thus should not be trimmed down. Originally, there were only 
two kernels for port-prep, a GENERIC and an INSTALL, but with the 
release of NetBSD 4.0. a second INSTALL_SMALL kernel was added, since 
the original INSTALL kernel (and generated image file) became too large 
to fit on a 1.44MiB floppy. The INSTALL_SMALL image is currently too big 
to be used on a floppy, but still works for net booting or as the image 
used to create the bootable part of the ISO. I don't know how many folks 
are still interested in using floppies, since net booting is an option, 
but it should still be possible to make a usable image, although with 
reduced functionality. I have experimented with a modified INSTALL_SMALL 
kernel config and successfully trimmed it down to produce a 1.1MiB SMALL 
kernel for use with the PReP partition. An alternate method to get a 
bootable PReP partition is to dd the sysinst.fs image (when it's <2MiB) 
into it. From my experience, this will load the bootloader and try to 
load from disk, or eventually fail and then try in(), booting into the 
RAM disk installer.

Sysinst does not currently produce a working PReP partition, because it 
uses the GENERIC kernel, which is too large. It should either use the 
INSTALL kernel (although even that is too large at the moment, so 
INSTALL_SMALL instead) or a new trimmed-down "SMALL" kernel that is <2MiB.

The following directory indexes should provide some perspective of how 
the image files were originally sized (they all were able to fit on a 
floppy disk). On a side note, generic.fs looks to last have been <2MiB 
with the NetBSD 5.2 release.

Index of pub/NetBSD-archive/NetBSD-2.0/prep/installation/floppy/
Name			Last modified		Size
Parent Directory	06-Dec-2004 00:27	1kB
BSDSUM			06-Dec-2004 00:29	1kB
CKSUM			06-Dec-2004 00:29	1kB
MD5			06-Dec-2004 00:29	1kB
SYSVSUM			06-Dec-2004 00:29	1kB
generic.fs		06-Dec-2004 00:29	1424kB
generic.fs.gz		06-Dec-2004 00:29	1394kB
generic_com0.fs		06-Dec-2004 00:29	1413kB
generic_com0.fs.gz	06-Dec-2004 00:29	1388kB
sysinst.fs		06-Dec-2004 00:29	1441kB
sysinst.fs.gz		06-Dec-2004 00:29	1409kB
sysinst_com0.fs		06-Dec-2004 00:29	1430kB
sysinst_com0.fs.gz	06-Dec-2004 00:29	1404kB

Index of pub/NetBSD-archive/NetBSD-4.0/prep/installation/floppy/
Name			Last modified		Size
Parent Directory	16-Dec-2007 08:54	1kB
BSDSUM			16-Dec-2007 08:55	1kB
CKSUM			16-Dec-2007 08:55	1kB
MD5			16-Dec-2007 08:55	1kB
SHA512			16-Dec-2007 08:55	1kB
SYSVSUM			16-Dec-2007 08:55	1kB
generic.fs		16-Dec-2007 08:55	1863kB
generic_com0.fs		16-Dec-2007 08:55	1854kB
sysinst.fs		16-Dec-2007 08:55	1545kB
sysinst_com0.fs		16-Dec-2007 08:55	1535kB
sysinst_small.fs	16-Dec-2007 08:55	1413kB
sysinst_small_com0.fs	16-Dec-2007 08:55	1403kB

Index of pub/NetBSD/NetBSD-8.2/prep/installation/floppy/
Name			Last modified		Size
Parent Directory	31-Mar-2020 11:16	1kB
MD5			31-Mar-2020 11:17	1kB
SHA512			31-Mar-2020 11:17	1kB
generic.fs		31-Mar-2020 11:17	2610kB
generic_com0.fs		31-Mar-2020 11:17	2601kB
sysinst.fs		31-Mar-2020 11:17	2028kB
sysinst_com0.fs		31-Mar-2020 11:17	2018kB
sysinst_small.fs	31-Mar-2020 11:17	1876kB
sysinst_small_com0.fs	31-Mar-2020 11:17	1867kB

Index of pub/NetBSD/NetBSD-9.2/prep/installation/floppy/
Name			Last modified		Size
Parent Directory	12-May-2021 23:02	1kB
MD5			12-May-2021 23:04	1kB
SHA512			12-May-2021 23:04	1kB
generic.fs		12-May-2021 23:04	2717kB
generic_com0.fs		12-May-2021 23:04	2708kB
sysinst.fs		12-May-2021 23:04	2137kB
sysinst_com0.fs		12-May-2021 23:04	2128kB
sysinst_small.fs	12-May-2021 23:04	1957kB
sysinst_small_com0.fs	12-May-2021 23:04	1948kB