GRUB on OLPC / XO

Robert Millan rmh at aybabtu.com
Tue Jan 15 11:36:12 EST 2008


On Tue, Jan 15, 2008 at 01:06:43PM +0100, Robert Millan wrote:
> > >    /* Load pre-loaded modules and free the space.  */
> > >    grub_register_exported_symbols ();
> > > -  grub_load_modules ();
> > > +//  grub_load_modules ();
> > 
> > Why?
> 
> I still don't know.  Memory corruption I think.  I'm investigating.

Ok, this would explain it:

_start: 0x10000, _end: 0x1f804
Using memory for heap: addr=0x100000, end=0x400000
Using memory for heap: addr=0x2000, end=0x9ffff
Welcome to GRUB!

See how our core image and the second heap chunk overlap.  I'm not sure if this
is a bug in OFW's /memory/available, but in any case it doesn't hurt to add a
generic sanity check in our memory manager to avoid this sort of breakage.

It's also be useful to protect our own stack, etc..

What do you think?

-- 
Robert Millan

<GPLv2> I know my rights; I want my phone call!
<DRM> What use is a phone call, if you are unable to speak?
(as seen on /.)



More information about the Devel mailing list