grub-devel
[Top][All Lists]
Advanced

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

Re: embedding filesystems in core image (Re: moving ata initialisation t


From: Bean
Subject: Re: embedding filesystems in core image (Re: moving ata initialisation to a command)
Date: Mon, 24 Dec 2007 21:27:05 +0800

On Dec 24, 2007 9:09 PM, Robert Millan <address@hidden> wrote:
> I was thinking in moving it to malloc'ed memory, which has the advantage that
> you no longer need to remember a particular region is hardcoded for memdisk
> (also, it hinders portability on platforms where top of memory is reserved).
>
> but this doesn't solve the problem about its original region being corrupted
> (by payload loaders) before we have a chance to copy it.

In that case, you can copy the memdisk back to conventional memory,
alongside with modules.
In startup.S:

codestart:
...
        /* copy modules before cleaning out the bss */
        movl    EXT_C(grub_total_module_size), %ecx
        movl    EXT_C(grub_kernel_image_size), %esi
        addl    %ecx, %esi

->
        movl    EXT_C(grub_total_module_size), %ecx
+      addl    EXT_C(grub_memdisk_image_size), %ecx
        movl    EXT_C(grub_kernel_image_size), %esi
        addl    %ecx, %esi

>
> > I also recommend to add a variable grub_memdisk_image_base in
> > startup.S, normally, this value will be zero,
>
> That's in my patch already.  Or did you mean something else?

But i only see the grub_memdisk_image_size, not the base address.


-- 
Bean




reply via email to

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