Hi,
if (0x100000000LL + RamSizeOver4G < entry.address + entry.length)
RamSizeOver4G = entry.address + entry.length - 0x100000000LL;
it's all based on assumption that there is only one highmem entry, why don't take just entry.length then?
Would work today as entry.address will be 0x100000000LL at this point no matter what. But if that ever changes -- say due to qemu gaining support for non-contigous memory -- things will break. So we better should do the math to be on the safe side for the future.
cheers, Gerd