grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Loongson 2E boot failure


From: Andreas Barth
Subject: Re: Loongson 2E boot failure
Date: Sat, 13 Aug 2011 12:32:31 +0200
User-agent: Mutt/1.5.18 (2008-05-17)

* Vladimir 'φ-coder/phcoder' Serbinenko (address@hidden) [110812 15:15]:
> On 03.08.2011 13:21, Robert Millan wrote:
> > 2011/7/26 Colin Watson <address@hidden>:
> >>> Looks like memory allocations are wrong. Try hardcoding heap at e.g.
> >>> 81000000-82000000
> >> Sorry, I've not had to mess with this before.  Can you point me to what
> >> I'd need to change to hardcode a specific heap region?
> > Try replacing grub_machine_mmap_iterate() with something like:
> >
> > grub_err_t
> > grub_machine_mmap_iterate (grub_memory_hook_t hook)
> > {
> >   hook (0x81000000, 82000000, GRUB_MEMORY_AVAILABLE);
> >   return GRUB_ERR_NONE;
> > }
> >
> This code is wrong for at least 4 reasons:
> 1) 0x8.... is just to access kseg0, it's not part of physical address
> 2) second argument is a size, not end
> 3) and it's lacking 0x
> 4) on yeeloong memory init doesn't use mmap.
> Correct way is to replace:
>   grub_mm_init_region ((void *) modend, (grub_arch_memsize << 20)
>                - (modend - GRUB_ARCH_LOWMEMVSTART));
> with:
>   grub_mm_init_region (0x81000000, 16 << 20);

No real behaviour change - still fails within grub_font_init (using
the for(;;);-method).

Only change compared with
http://lists.gnu.org/archive/html/grub-devel/2011-07/msg00085.html is
that the last line on the vga console is now
80211ebc 7091181e .word   7091181e     # ...p



Andi



reply via email to

[Prev in Thread] Current Thread [Next in Thread]