Author Topic: 32-bit machine, 4GB of ram  (Read 3405 times)

0 Members and 1 Guest are viewing this topic.

Offline Camel

  • Hero Member
  • *****
  • Posts: 1705
    • View Profile
    • BNU Bot
32-bit machine, 4GB of ram
« on: October 23, 2009, 05:08:37 PM »
I recently inherited a new 32-bit development box at work, and upgraded the RAM to 4GB. It's running REHL4, or CentOS 5.3, or RHEL5, depending on which place you look; the kernel is 2.6.18-164.el5PAE. I can only see 3GB of the RAM. Any ideas?


$ cat /proc/meminfo
MemTotal:      3106308 kB
...
$ uname -r
2.6.18-164.el5PAE


[edit] Yes, the CPU does support PAE :)
« Last Edit: October 23, 2009, 05:18:49 PM by Camel »

<Camel> i said what what
<Blaze> in the butt
<Camel> you want to do it in my butt?
<Blaze> in my butt
<Camel> let's do it in the butt
<Blaze> Okay!

Offline rabbit

  • x86
  • Hero Member
  • *****
  • Posts: 8099
  • I speak for the entire clan (except Joe)
    • View Profile
Re: 32-bit machine, 4GB of ram
« Reply #1 on: October 23, 2009, 07:47:02 PM »
Bad stick?

Offline MyndFyre

  • Boticulator Extraordinaire
  • x86
  • Hero Member
  • *****
  • Posts: 4550
  • The wait is over.
    • View Profile
    • JinxBot :: the evolution in boticulation
Re: 32-bit machine, 4GB of ram
« Reply #2 on: October 25, 2009, 12:39:36 AM »
At least on Windows, processes have to specifically opt-in to PAE.  Your pointers are still 32 bits wide.

It should still work out fine.
I have a programming folder, and I have nothing of value there

Running with Code has a new home!

Our species really annoys me.

Offline iago

  • Leader
  • Administrator
  • Hero Member
  • *****
  • Posts: 17928
  • Fnord.
    • View Profile
    • SkullSecurity
Re: 32-bit machine, 4GB of ram
« Reply #3 on: October 25, 2009, 11:57:53 AM »
There's a kernel setting for addressing that high, it's called bigmem or something. Make sure that's turned on. Most distros don't enable it by default for some reason, so it requires a recompile.

Offline Camel

  • Hero Member
  • *****
  • Posts: 1705
    • View Profile
    • BNU Bot
Re: 32-bit machine, 4GB of ram
« Reply #4 on: October 25, 2009, 07:48:04 PM »
I did some more research (looked at the system log), and it turns out the bios is only seeing 3GB. If it was a bad stick, it should still see 4, right?

Is there an flag I can give the kernel to have it ignore the bios' memory map?

[edit] Just FTR, the box is in a lab I don't have access to, so tweaking the bios is at the bottom of my list of things to try

There's a kernel setting for addressing that high, it's called bigmem or something. Make sure that's turned on. Most distros don't enable it by default for some reason, so it requires a recompile.
I read several articles/success stories saying that RHEL/CentOS' PAE kernel has everything you need for 64GB. I can compile a kernel, but I think I don't need to.
« Last Edit: October 25, 2009, 07:52:53 PM by Camel »

<Camel> i said what what
<Blaze> in the butt
<Camel> you want to do it in my butt?
<Blaze> in my butt
<Camel> let's do it in the butt
<Blaze> Okay!

Offline Camel

  • Hero Member
  • *****
  • Posts: 1705
    • View Profile
    • BNU Bot
Re: 32-bit machine, 4GB of ram
« Reply #5 on: October 26, 2009, 11:08:28 AM »
$ cat /boot/config-`uname -r` | grep -i mem
CONFIG_SHMEM=y
# CONFIG_TINY_SHMEM is not set
# CONFIG_NOHIGHMEM is not set
# CONFIG_HIGHMEM4G is not set
CONFIG_HIGHMEM64G=y
CONFIG_HIGHMEM=y
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not set
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_SPARSEMEM_STATIC is not set
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
# Memory Technology Devices (MTD)
# CONFIG_BLK_DEV_UMEM is not set
CONFIG_INFINIBAND_USER_MEM=y
CONFIG_DEBUG_HIGHMEM=y
CONFIG_HAS_IOMEM=y


Sounds like I want CONFIG_HIGHMEM4G and not CONFIG_HIGHMEM64G after reading the docs on each...but that still doesn't address the BIOS being clueless issue.

<Camel> i said what what
<Blaze> in the butt
<Camel> you want to do it in my butt?
<Blaze> in my butt
<Camel> let's do it in the butt
<Blaze> Okay!

Offline iago

  • Leader
  • Administrator
  • Hero Member
  • *****
  • Posts: 17928
  • Fnord.
    • View Profile
    • SkullSecurity
Re: 32-bit machine, 4GB of ram
« Reply #6 on: October 27, 2009, 01:07:54 AM »
If the BIOS isn't seeing it, I highly doubt there's anything you can do in your OS. Sorry :)

Offline Camel

  • Hero Member
  • *****
  • Posts: 1705
    • View Profile
    • BNU Bot
Re: 32-bit machine, 4GB of ram
« Reply #7 on: October 27, 2009, 03:40:04 AM »
Okay, so I pulled in a favor and got the lab manager to let me pull the box. I checked in the BIOS configuration, and it is definitely seeing 4GB. The map it's giving the kernel, however, is missing some RAM.

Linux version 2.6.18-164.el5PAE (mockbuild@builder16.centos.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)) #1 SMP Thu Sep 3 04:10:44 EDT 2009
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000010000 - 00000000000a0000 (usable)
 BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 00000000bfd86c00 (usable)
 BIOS-e820: 00000000bfd86c00 - 00000000bfd88c00 (ACPI NVS)
 BIOS-e820: 00000000bfd88c00 - 00000000bfd8ac00 (ACPI data)
 BIOS-e820: 00000000bfd8ac00 - 00000000c0000000 (reserved)
 BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
 BIOS-e820: 00000000fec00000 - 00000000fed00400 (reserved)
 BIOS-e820: 00000000fed20000 - 00000000feda0000 (reserved)
 BIOS-e820: 00000000fee00000 - 00000000fef00000 (reserved)
 BIOS-e820: 00000000ffb00000 - 0000000100000000 (reserved)
2173MB HIGHMEM available.
896MB LOWMEM available.

...
Memory: 3109260k/3143192k available (2151k kernel code, 32636k reserved, 886k data, 232k init, 2225688k highmem)

c to e-million isn't even mapped...that's half a gig right there!
« Last Edit: October 27, 2009, 03:41:50 AM by Camel »

<Camel> i said what what
<Blaze> in the butt
<Camel> you want to do it in my butt?
<Blaze> in my butt
<Camel> let's do it in the butt
<Blaze> Okay!