Re: 4Gb ram not showing up

From: Tom Moore
Date: Thu Jun 07 2007 - 09:34:05 EST




Satyam Sharma wrote:
On 6/6/07, Lennart Sorensen <lsorense@xxxxxxxxxxxxxxxxxxx> wrote:
[...]
A better description would be:

"Select this if you have a 32-bit processor and memory mapped in the 1GB
to 4GB address range."
[...]
That one would be better as:

"Select this if you have a 32-bit processor and ram mapped in the address
range above 4GB."

Ugh, no! How can we expect the user compiling a kernel to be *so*
familiar with address space re-mapping / BIOSen (_his_ particular
BIOS, specifically, and what / how it re-maps memory) / etc to be
able to answer such questions? "Select ... if you have ... RAM
installed" is perfectly clear, simple, and all that's needed.

However the KConfig help message as it is currently written is wrong.
BTW, just imagine what a user would need to do to make things
work as per your proposal. Build some kernel (don't care about
memory loss), boot and find what his firmware prefers to do with
address space (or else read up the BIOS documentation!) and
_then_ again build a new kernel, this time selecting the options
appropriately ...
I tried to do this, but the Kconfig help message was misleading. I still needed to come here for help.

Also, note that the change you're proposing is unnecessary! As
Andi pointed out, this issue has more to do with broken BIOSen
and the proper fix for Tom is to contact his vendor and flash /
upgrade the BIOS firmware. I don't see anything wrong with the
Kconfig help texts.
Andi was wrong. It appears that he read the first sentence of my email and jumped to a conclusion. The /proc/mtrr output that I included in my first post showed the my bios was doing the right thing. My problem was that I was using CONFIG_HIGHMEM4G, which is what the KConfig help message told me to do. After switching to CONFIG_HIGHMEM64G the OS was able to map all of my ram.

total used free shared buffers cached
Mem: 4016768 3924312 92456 0 360132 3030336
-/+ buffers/cache: 533844 3482924
Swap: 5116692 2676 5114016

Thanks to those with the correct advice. I'm sure I would have got this by trying each memory model in turn, but at least now I know what is going on.

Tom

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/