Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Dec 2008 14:51:48 -0500
From:      John Baldwin <jhb@freebsd.org>
To:        Hiroharu Tamaru <tamaru@myn.rcast.u-tokyo.ac.jp>
Cc:        sobomax@freebsd.org, freebsd-bugs@freebsd.org, FreeBSD-gnats-submit@freebsd.org, pjd@freebsd.org
Subject:   Re: kern/129526: pxeboot fails to load kernel / modules
Message-ID:  <200812101451.48456.jhb@freebsd.org>
In-Reply-To: <sa68wqo75eo.wl%tamaru@myn.rcast.u-tokyo.ac.jp>
References:  <200812091720.mB9HK1uY021743@freefall.freebsd.org> <200812091621.47695.jhb@freebsd.org> <sa68wqo75eo.wl%tamaru@myn.rcast.u-tokyo.ac.jp>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 10 December 2008 04:20:31 am Hiroharu Tamaru wrote:
> Thank you, John.
> 
> At Tue, 9 Dec 2008 16:21:47 -0500, John Baldwin wrote:
> >
> > On Tuesday 09 December 2008 12:54:06 pm Hiroharu Tamaru wrote:
> (snip)
> > > It turns out that replacing the pxeboot binary served by tftp
> > > to pxeboot in 6.4-RELEASE-i386-bootonly.iso allows the installer
> > > to boot properly, but pxeboot from 7.0-RELEASE also fails.
> > > 
> > > It then turned out that by unzipping the /boot/mfsroot.gz image
> > > on the ftp server, it allows the kernel to boot, for any of the 
pxeboot's
> > > mentioned above.
> > > 
> > > Thus, it seems likely that the unzipping routines in pxeboot,
> > > or more precisely, the loader included in the pxeboot,
> > > is corrupting some part of the device table or such.
> (snip)
> > I think loader has just grown and the stack is growing into the heap.  
There 
> > is a loader option to move the heap up above 1 MB that you should try.
> 
> Indeed, it was.
> 
> (for the record:)
> Enabling the code in sys/boot/i386/loader/main.c
> that is activated by putting either of:
>  LOADER_BZIP2_SUPPORT=yes
>  LOADER_FIREWIRE_SUPPORT=yes
>  LOADER_ZFS_SUPPORT=yes  (8.0-current only ATM)
> into /etc/make.conf has solved the problem.
> 
> 
> Current pxeboot build pulls the loader binary built for
> the (non-pxe-)loader verbatim.
> 
> Is there a possibility that putting the heap above 1MB
> might become the default in the near future? say, whenever
> LOAD_NO_GZIP_SUPPORT is not set.
> 
> Alternatively, do you think it is worth a trouble to modifiy
> the build system so that the default pxeboot has this high
> heap support?
> 
> Or, would you think whoever setting up an pxeboot installer
> should know the corners, and either unzip the mfsroot.gz or
> rebuild his own pxeboot?

I think adding GPT support (which I did) probably caused the loader to grow 
enough in size.  Probably I should make the GPT stuff optional and enable the 
higher memory usage if it is enabled (but make it on by default perhaps?)

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200812101451.48456.jhb>