Skip site navigation (1)Skip section navigation (2)
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>