Date: Wed, 21 Jan 2015 08:30:05 -0800 From: Adrian Chadd <adrian@freebsd.org> To: "freebsd-arch@freebsd.org" <freebsd-arch@freebsd.org> Subject: please test: i386 bootloader changes Message-ID: <CAJ-Vmo=AD5cJYsO1EEdfawusxVNVrJO_TTvQT5=_aGEF8JBq3A@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
Hi, Here's something that I've been poking for a little while. The SeaBIOS emulation in the Chromebook C720 implements the E820 memory map by putting a hole between 15 and 16MiB. That's some really legacy PC-AT stuff right there. Unfortunately that stops kernel.GENERIC from loading as loader thinks there's only < 14MiB of extended RAM available. This patch: https://people.freebsd.org/~adrian/c720/20150121-seabios-loader-changes-2.diff updates it so if the first extended segment from the E820 call is too small, it tries the E801 call. It also fixes a bug in the E801 call that would treat the lower and upper memory regions returned as contiguous when they may indeed not be. Now - here be dragons. It's possible that fixing this stuff for one buggy bios makes freebsd's loader unhappy on other buggy bioses. So I'd really appreciate if it people would try this out on 32/64 bit x86 platforms and report back success/failures. So far nothing I have here complains, but I don't have /that/ much hardware. Thanks, -adrian
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-Vmo=AD5cJYsO1EEdfawusxVNVrJO_TTvQT5=_aGEF8JBq3A>