Date: Wed, 31 May 2023 13:01:22 -0700 From: "Simon J. Gerraty" <sjg@juniper.net> To: Warner Losh <imp@bsdimp.com> Cc: FreeBSD User <freebsd@walstatt-de.de>, FreeBSD CURRENT <freebsd-current@freebsd.org>, <sjg@juniper.net> Subject: Re: WITH_BEARSSL: -8112 bytes available Message-ID: <27.1685563282@kaos.jnpr.net> In-Reply-To: <CANCZdfo-PojzQrL5ppxSLLfp%2B5f-ToqQD_N3p3aYtEKBodQ7xQ@mail.gmail.com> References: <20230529105854.1903226d@thor.intern.walstatt.dynvpn.de> <CANCZdfo-PojzQrL5ppxSLLfp%2B5f-ToqQD_N3p3aYtEKBodQ7xQ@mail.gmail.com>
index | next in thread | previous in thread | raw e-mail
> the loader program. You may also have to disable the lua build, since it uses more stack and is just a smidge > larger than the forth build. _simp will be the smallest of them > all. On my system, without bearssl, I see: Back when I first did the LOADER_VERIEXEC bits, I found lua pushed things over the edge. We use 4th anyway, and will likely be stuck with it for another decade at least. > -r-xr-xr-x 3 root wheel 503808 May 22 15:25 /boot/loader_lua > -r-xr-xr-x 1 root wheel 446464 May 22 15:25 /boot/loader_4th > -r-xr-xr-x 1 root wheel 385024 May 22 15:25 /boot/loader_simp > which suggests a ~60k bump for adding forth and ~115k bump for lua. So the 560,000 may need to be 625,000 > which is living life on the edge for 4th, and simply too big for lua. > > I'd be open to adding docs on this, since I don't think this option is currently documented since I added it > to experiment around with a good value. My own experiments found somewhere around 550k to be the limit. > And no, I really do not want to support 'loadable modules'. BIOS > booting is on the way out, and people > that want to do complex stuff in the boot loader will simply have to > do that in UEFI or maybe kboot/LinuxBoot. > There's low RoI on adding this complexity, imho. We'd be better off, > imho, making things like the graphics > console optional since the fonts and code for that free up about 30k > in stupid experiments that I've done Yes. For those of us with serial only consoles, the graphics stuff is pure overhead. > Without the extras and ZFS, you might have bearssl and lua together even... FWIW our i386 loader with BEARSSL and LOADER_VERIEXEC and 4th rather than lua is 312K I can get that down to 308K by dropping LOADER_EXT2FS_SUPPORT which I am pretty sure we don't need. If I enable lua and disable 4th, the loader is still only 352K in our stable/12 branch and 364K in main I just did a quick test on a VM - that loader_lua was able to load kernel ok, so looks promising. Of course we have 8k lines of 4th that would need translating to lua before I could be sure. --sjghelp
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?27.1685563282>
