Package: grub Version: 0.97-27 Severity: normal Tags: patch Hello,
On my system grub don't properly detect E820 memory map. Without it Xen hypervisor cannot use memory above 4G range. Output from grub command displaymem: grub> displaymem EISA Memory BIOS Interface is present Address Map BIOS Interface is present Lower memory: 639K, Upper memory (to first chipset hole): 3406656K grub> I think that problem is located in do { } while (cont) loop at file stage2/common.c around line 181. It looks like while loop is optimized away (gone) during compilation. Don't know if it's bug in grub or toolchain and unfortunately I haven't necessary knowledge to verify that. Patch below fixes problem: --- ../common.c 2007-04-19 11:36:19.000000000 +0200 +++ stage2/common.c 2007-04-19 11:36:55.000000000 +0200 @@ -142,7 +142,8 @@ init_bios_info (void) { #ifndef STAGE1_5 - unsigned long cont, memtmp, addr; + unsigned long memtmp, addr; + volatile unsigned long cont; int drive; #endif displaymem after patch: grub> displaymem EISA Memory BIOS Interface is present Address Map BIOS Interface is present Lower memory: 639K, Upper memory (to first chipset hole): 3406656K [Address Range Descriptor entries immediately follow (values are 64-bit)] Usable RAM: Base Address: 0x0 X 4GB + 0x0, Length: 0x0 X 4GB + 0x9fc00 bytes .... [ more ranges ] ... Usable RAM: Base Address: 0x1 X 4GB + 0x0, Length: 0x0 X 4GB + 0x30000000 bytes grub> Regards Kupson -- System Information: Debian Release: 4.0 APT prefers stable APT policy: (900, 'stable'), (700, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 2.6.20-1-amd64 (SMP w/2 CPU cores) Locale: LANG=pl_PL.UTF-8, LC_CTYPE=pl_PL.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash -- no debconf information -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]