8.0-RC2 on Rackmac3,1 - fatal kernel trap
Peter Grehan
grehan at freebsd.org
Wed Nov 11 05:13:12 UTC 2009
Hi Nathan,
> Drat. I think this is something inside OF that only applies to CD
> booting, since 64 was more than enough for netbooting the kernel or
> booting from a hard drive, so changes to the loader probably won't
> affect anything. Also, it is now too late to get any changes to this
> code into 8.0, which is unfortunate. I guess the size of the buffer just
> needs to be bumped to 128 (or more?).
It's due to a bunch of extra allocations needed for the md root fs
image that is loaded pre-boot.
The allocations can be seen by breaking into the loader just before
boot and issuing a 'memmap'. Lots of 16-page allocations there.
> I'm a little concerned about bloating the kernel here. I think there is
> enough headroom in the stack that it can be moved to the local stack
> frame, so that's a possibility. It can't be allocated dynamically, since
> there is no way to add memory that OF can use at that point in the boot
> process.
There's no elegant way to do it :( You could claim some pages from ofw
to hold all of the mappings, or even pass off the work back to the
loader and get it to put all of the mappings into metadata, or to at
least pass some pages to you that could be used for the allocation.
later,
Peter.
More information about the freebsd-ppc
mailing list