On Dec 24, 2007 9:09 PM, Robert Millan <[EMAIL PROTECTED]> 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 _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel