Linux From ScratchThis Forum is for the discussion of LFS.
LFS is a project that provides you with the steps necessary to build your own custom Linux system.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Hi. I have a problem. My newly built LFS system sees only 900 mb of RAM, even if BIOS registers 2 GB. Probably, I've made a mistake during kernel configuration, but have no idea what mistake.
Could you post/attach the output of the dmesg command and the kernels .config file?
BTW: One thing that does come to mind: Could the memory installed be faulty? Do you have any way of checking if all is picked up correct by another linux/windows OS?
This may be bug in the BIOS which might report incorrect memory map to Linux. But it's just a guess, to properly understand this we need output of dmesg command.
Have you tried setting High Memory Support to 64G?
I know you don't have that much ram, but it will enable CONFIG_X86_PAE, which could (hopefully) help.
PAE extends address space from 32bit to 36bit, so it's not what is needed to increase available memory from 1G to 2G.
Quote:
I have 4G RAM, only 2G is detected when I run with High Memory Support 4G, it is detected when I run with the 64G setting.
It's most likely that some device maps its MMIO registers etc. to upper 2G. In this case using PAE allows linux to relocate these MMIO registers into upper memory area and use the remaining 2G.
Quote:
Originally Posted by dmesg
Warning only 895MB will be used.
Use a HIGHMEM enabled kernel.
Set High Memory Support to 4G in the kernel config (Processor type and features->High Memory Support in menuconfig).
Well, this is at least very strange. Need a new dmesg output. You may have rebooted into wrong kernel version. Or, you might have failed to save the kernel config after you changed it or to run make and then installation procedure after all this.
Quote:
Can you give a hint where this PAE option is? Because I haven't found it yet.
PAE is in that same menu entry, but 64G (2^36 B - it's actually using PAE) instead of 4G (2^32 B).
Now, the proper value of RAM memory available is being displayed.
Thank you guys very much for help.
I am wondering why this happened. Is there any reasonable explanation why it's necessary to compile kernel with High Memory Support 64GB even if I have only 2GB?
Is there any reasonable explanation why it's necessary to compile kernel with High Memory Support 64GB even if I have only 2GB?
To be honest I'm not sure, but I think this has to do with the way the memory was mapped and possible holes in these ranges. Compare your old dmesg output with the current one, you might be able to "see" the differences.
From experience I've noticed that activating PAE (High Memory Support 64G) seems to solve these problems.
BTW: If this is solved, would you put up the SOLVED tag (above post #1 -> Thread Tools).
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.