Linux - ServerThis forum is for the discussion of Linux Software used in a server related context.
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.
Our server motherboard is TYAN 8236 and the bios showed 64GB memory installed. However the linux (AMD64) showed 3.5GB!!
Then in the boot log I saw:
Code:
Jun 9 02:31:32 sv1 kernel: [ 0.000000] Your BIOS doesn't leave a aperture memory hole
Jun 9 02:31:32 sv1 kernel: [ 0.000000] Please enable the IOMMU option in the BIOS setup
Jun 9 02:31:32 sv1 kernel: [ 0.000000] This costs you 64 MB of RAM
Jun 9 02:31:32 sv1 kernel: [ 0.000000] Mapping aperture over 65536 KB of RAM @ 20000000
So I entered the BIOS and enabled the IOMMU option. This time, in the boot log, I see:
Code:
Jun 12 12:32:51 sv1 kernel: [ 5.742942] pci 0000:00:00.2: irq 56 for MSI/MSI-X
Jun 12 12:32:51 orca kernel: [ 5.742960] AMD-Vi: Enabling IOMMU at 0000:00:00.2 cap 0x40
Jun 12 12:32:51 sv1 kernel: [ 5.750257] AMD-Vi: device isolation enabled
Jun 12 12:32:51 sv1 kernel: [ 5.750397] AMD-Vi: Lazy IO/TLB flushing enabled
Jun 12 12:32:51 sv1 kernel: [ 5.753630] Scanning for low memory corruption every 60 seconds
Jun 12 12:32:51 sv1 kernel: [ 5.753910] audit: initializing netlink socket (disabled)
Any 32-bit operating system will only see/use 3.5GB of RAM. The solution is to install and use 64-bit OS so that the CPU can access the physical address space above the 4GB boundary.
He certainly could enable PAE in the kernel to access the RAM, however, if he has any one process that wants to access more than 2GB of RAM I believe it is he will want a 64-bit kernel. The OP is claiming that he is using a 64-bit install, but like you my first reaction is that he's only using a 32-bit install. If he posts the information requested we'll know for sure though.
Try a backport kernel version newer than the one you are using....compile your own new kernel? If you know the issue is a bug with older kernels and newer processors these are really your only options, unless the bug gets fixed.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.