Date: Sat, 13 Dec 2008 08:10:04 GMT From: Hiroharu Tamaru <tamaru@myn.rcast.u-tokyo.ac.jp> To: freebsd-bugs@FreeBSD.org Subject: Re: kern/129526: pxeboot fails to load kernel / modules Message-ID: <200812130810.mBD8A4ql010561@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/129526; it has been noted by GNATS. From: Hiroharu Tamaru <tamaru@myn.rcast.u-tokyo.ac.jp> To: John Baldwin <jhb@freebsd.org> Cc: sobomax@freebsd.org, pjd@freebsd.org, FreeBSD-gnats-submit@freebsd.org, freebsd-bugs@freebsd.org Subject: Re: kern/129526: pxeboot fails to load kernel / modules Date: Sat, 13 Dec 2008 17:08:51 +0900 At Wed, 10 Dec 2008 14:51:48 -0500, John Baldwin wrote: > > 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?) I agree that's quite reasonable (wrapping around GPT, and default it to on). I looked into the sources, but to me, wrapping all the bits on GPT with #ifdef LOADER_GPT_SUPPORT was not too trivial. How trivial or non-trivial is it if I asked you for it? I'll look into it again when I get another time slot if you are too busy until then. Thanks. Hiroharu
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200812130810.mBD8A4ql010561>