cvs commit: src/sys/i386/i386 locore.s
Bruce Evans
bde at zeta.org.au
Wed Jul 30 05:49:23 PDT 2003
On Wed, 30 Jul 2003, Ruslan Ermilov wrote:
> On Tue, Jul 29, 2003 at 02:57:01PM -0700, Bruce Evans wrote:
> > bde 2003/07/29 14:57:01 PDT
> >
> > FreeBSD src repository
> >
> > Modified files:
> > sys/i386/i386 locore.s
> > Log:
> > Restored clearing of the bss, except for putting it in a correct place
> > with up to date comments. This fixes booting kernels with boot2
> > (except for loss of the features provided by loader) and is suitable
> > for MFC. Contrary to the old comments, most loaders don't clear the bss.
> > biosboot lost clearing of the bss in a code crunch in 1997, and boot2
> > never did it.
> >
> To make it crystal clear, it does mean that we can (once again) boot
> kernels without loader(8) on i386, correct?
Almost. There are still the following problems:
Symbols will be missing unless you use my hack for faking some module
data (I still haven't de-magiced it). But symbols don't seem to be
needed as much as they used to. I didn't notice them missing when I
tested this.
if you do use my hack, then you need to use an old version of boot2,
since boot2 in -current lost its RB_BOOTINFO flag so it doesn't actually
pass the historical bootinfo extensions that it spends a lot of space
to set up, and my hack and/or the preload_metadata handler is fragile
and causes panics if the symbol table is empty. I think the problem
is that a real symbol table is never empty. Other things in the extended
bootinfo are not needed, at least for me.
Statically configured hints and environment are needed of course.
Bruce
More information about the cvs-src
mailing list