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