Robert Millan wrote:
...
This part is intended to handle the (normal) case of one continuous
region with not gap between 1M and 16M:
(0x3C00 << 10) = 0x100000 * 15 = 15M
But this part does not work due to the same bug.
It is IMO not necessary to make this distinction. The function
compact_mem_regions() called a few lines later joins the two regions anyway.
Ah, ok. Have you verified that this is so? (setting debug=mem variable
during init might help on that).
Yes. During testing, I temporarily added some diagnostic output. The
function compact_mem_regions() works as expected.
Sorry for being so inquisitive, but I need to understand things well before
touching this part of GRUB, which as I said I'm not very familiar with.
A wrong memory map would break grub, therefore these parts should be
changed very carefully :-)
Christian
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/grub-devel