Please do not reply directly to this email. All additional comments should be made in the comments box of this bug report.
https://bugzilla.redhat.com/show_bug.cgi?id=448758
Summary: Grub sometimes does not detect entire memory map Product: Fedora Version: 8 Platform: x86_64 OS/Version: Linux Status: NEW Severity: medium Priority: low Component: grub AssignedTo: pjones@redhat.com ReportedBy: dustin.henning@prd-inc.com QAContact: extras-qa@fedoraproject.org CC: amyagi@gmail.com,dustin.henning@prd- inc.com,eric.moret@gmail.com,fedora-triage- list@redhat.com,jm@ish.de,mishu@piatafinanciara.ro,natha n.robertson@gmail.com,rjones@redhat.com,sputhenp@redhat. com,tru@pasteur.fr
+++ This bug was initially created as a clone of Bug #250299 +++
Description of problem:
Sometimes, grub does not recognize the entire e820 memory map, when the map is not provided by the BIOS in the multiboot information data structure. Ultimately, this appears to be an over-optimization by the compiler when building grub, in combination with buggy BIOS.
The result is that some downstream kernels (in my particular case, the Xen kernel) does not recognize all the memory available on a system.
Version-Release number of selected component (if applicable):
grub-0.97-13
How reproducible:
From the lack of discussion on the Fedora and Xen mailing lists, I presume this
problem is rare in the real world, and may be hard to reproduce.
The machine this happens on for me is has two Dual-Core AMD Opteron 2210 w/16GB of memory, using an American Megatrends BIOS. Upon boot on an unpatched grub, Xen only recognizes slightly less than 4GB. The Multiboot information data structure has flag for the mem_lower/mem_upper fields set (and Xen memory detection matches the values in these fields), and does not have the flag for memory map set.
Patch to fix problem:
--- grub-0.97/stage2/common.c.e820 2007-07-30 11:36:19.000000000 -0800
+++ grub-0.97/stage2/common.c 2007-07-30 11:36:55.000000000 -0800
@@ -142,6 +142,7 @@ init_bios_info (void)
{
#ifndef STAGE1_5
- unsigned long cont, memtmp, addr;
+ unsigned long memtmp, addr;
+ volatile unsigned long cont;
int drive;
#endif
-- Additional comment from peter.peltonen@gmail.com on 2007-08-14 08:56 EST --
I encountered the same problem with i386 and x86_64 CentOS5 + xen-enabled kernels. Only 2,9GB of my 6GB RAM was recognized. Non-xen 64bit and 32bit PAE-kernels saw the memory correctly. After patching grub with this patch and reinstalling grub (not just the rpm -- grub has to be reinstalled from grub prompt) all memory was recognized correctly.
-- Additional comment from dustin.henning@prd-inc.com on 2007-10-23 13:14 EST -- I too experienced this issue. The system in question was a Core 2 Quad E6600 with 8GiB on an Intel P965 Express chipset. Like the original reporter, this system also utilizes an AMIBIOS. In my case, only 3.2GiB was recognized prior to the patch, and the base (SMP) kernel did not recognize the ful amount of memory until I added mem=10G to the kernel arguments. Once the base (SMP) kernel was booted detecting 7.8GiB, the problem did not reoccur when the kernel argument was removed. Said kernel argument (and derivatives) had no effect on the xen kernels when placed after either/both kernel lines (xen.gz and module vmlinuz).
-- Additional comment from nathan.robertson@gmail.com on 2008-02-07 09:49 EST -- I too an experiencing this issue on an AMD64 machine with 8GBs of memory. Does anyone know if there is an updated Grub package with this patch applied?
-- Additional comment from eric.moret@gmail.com on 2008-02-14 09:25 EST -- Any progress in applying this patch? I too have this issue.
-- Additional comment from eric.moret@gmail.com on 2008-02-15 11:11 EST -- You can grab the fixed package at: ftp://ftp.zouric.com/public/grub-0.97-14.x86_64.rpm SRPMS at ftp://ftp.zouric.com/public/grub-0.97-14.src.rpm
-- Additional comment from amyagi@gmail.com on 2008-02-15 11:29 EST -- (In reply to comment #5)
You can grab the fixed package at: ftp://ftp.zouric.com/public/grub-0.97-14.x86_64.rpm SRPMS at ftp://ftp.zouric.com/public/grub-0.97-14.src.rpm
Thanks for making the patched grub available. According to your note on the CentOS forum:
http://www.centos.org/modules/newbb/viewtopic.php?topic_id=12491&forum=3...
you have fixed the problem on a Hetzner root server DS8000 ?
-- Additional comment from grover66@gmail.com on 2008-02-17 00:35 EST -- After installing the above grub rpm, you will have to run "grub-install /dev/sda" (for example) to make it all work.
-Mike
-- Additional comment from eric.moret@gmail.com on 2008-03-20 02:41 EST -- (In reply to comment #6)
you have fixed the problem on a Hetzner root server DS8000 ?
Yes, that is correct. I now have my 8Gb of RAM recognized on a Hetzner DS8000
-- Additional comment from steve@electricmint.com on 2008-05-07 02:18 EST -- (In reply to comment #5)
You can grab the fixed package at: ftp://ftp.zouric.com/public/grub-0.97-14.x86_64.rpm SRPMS at ftp://ftp.zouric.com/public/grub-0.97-14.src.rpm
Many thank for this patch Eric, it's also allowed me to see the 6GB on CentOS/Xen install on Core 2 Quad Acer.
Steve
-- Additional comment from drfatalis@hotmail.com on 2008-05-13 16:43 EST -- Hi there, I've got a Dell 1900 with CentOS 5.1 64 bit and 4 GB ram. Only 3 GB are recognized with kernel-xen-2.6.18-53.1.19.el5. I've downloaded & installed grub-0.97-14.x86_64.rpm and did grub- install /dev/sda. But it did not help and I still got 3 GB recognized. Can you please help me to fix this. Thank you in advance.
-- Additional comment from fedora-triage-list@redhat.com on 2008-05-14 09:47 EST -- This message is a reminder that Fedora 7 is nearing the end of life. Approximately 30 (thirty) days from now Fedora will stop maintaining and issuing updates for Fedora 7. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as WONTFIX if it remains open with a Fedora 'version' of '7'.
Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version prior to Fedora 7's end of life.
Bug Reporter: Thank you for reporting this issue and we are sorry that we may not be able to fix it before Fedora 7 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora please change the 'version' of this bug. If you are unable to change the version, please add a comment here and someone will do it for you.
Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete. If possible, it is recommended that you try the newest available Fedora distribution to see if your bug still exists.
Please read the Release Notes for the newest Fedora distribution to make sure it will meet your needs: http://docs.fedoraproject.org/release-notes/
The process we are following is described here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping