PfSense just recognizes/uses 2GB



  • Hello!

    I'm running pfSense 1.2.3-RC3 on a FSC Primergy RX100 S5 server. It is equipped with currently 6gb of memory.
    Ok, due to its 32-bit nature, full 6gb won't be useable by pfSense, but at least 4gb should be used.

    When booting pfSense it reports: "4194304K of memory above 4GB ignored"

    Fact is that it ignores 4194304K above 2GB - not above 4GB.

    There is a thread (http://forum.pfsense.org/index.php/topic,19056.msg98613.html#msg98613)) where somebody complains that his 1.2.3-RCx-installation just recognizes 4gb of 6gb. Thus, I assume that pfSense can handle up to 4gb. I would be pretty lucky, when I could use at least 4gb. 2gb is a bit less.

    Any idea how or where I can get 2 more gigabytes of ram?

    Thanks,
    Florian


  • Rebel Alliance Developer Netgate

    It could be the way that particular board addresses the memory.

    How many DIMMs are installed? What sizes? Have you tried removing any DIMMs to see if the detected amount changes?



  • There are 3x 2gb DIMMs. I'll try a different combination. 2x 2g and 1x 4gb if I find a 4gb DIMM anywhere here around.

    Update:

    Now I tested. Unfortunatelly no success.

    There are 4 slots: 1A, 1B, 2A, 2B

    1A:          1x2gb –> 2gb total in BIOS --> 2gb recognized by pfSense
    1A+1B:      2x2gb --> 4gb total in BIOS --> 2gb recognized by pfSense
    1A+2A:      2x2gb --> 4gb total in BIOS --> 2gb recognized by pfSense
    1A+1B+2A: 3x2gb --> 6gb total in BIOS --> 2gb recognized by pfSense

    It seems that pfSense uses the wrong limit to skip. It displays: "4194304K of memory above 4GB ignored" (6gb installed), but in fact it 4194304K of memory above 2GB are ignored. Every additional memory above 2gb is ignored.

    The server runs the most update BIOS version.



  • can you try an experiment: download a 2.0 live-cd and boot from that and see if that fixes it?  if so, it may be a 7.x vs 8.0 issue?  if it does resolve it, it would be interesting to try booting from a freebsd 7.2 live-cd and see if it has the issue too.  i am pretty sure this is not pfsense's fault, but the underlying OS, which they do not control.



  • I tried pfSense 2.0-Alpha-Alpha and FreeBSD 8.0 RC3.

    The only change is at boot time. Now FreeBSD reports:

    'real memory 6291456k'
    'avail memory 2097152k'

    and then it just uses 2gb and not 4gb.

    vmstat reports also just 2gb available memory.



  • can you try booting from some linux live-cd and see if you have the same issue?  that would point to some kind of bios issue.



  • I am curious now.  When I get a chance in the next couple of days, I want to download the 7.x kernel source and see how/why this is happening.



  • @hbc:

    I'm running pfSense 1.2.3-RC3 on a FSC Primergy RX100 S5 server. It is equipped with currently 6gb of memory.
    Ok, due to its 32-bit nature, full 6gb won't be useable by pfSense, but at least 4gb should be used.

    Wrong! At MOST 4GB can be available. This is because is built for a 32-bit CPU (so 32 bit virtual address) AND without any of the options supporting a physical address bigger than 32 bits.  So you are stuck with a 32 bit physical address. Out of that 4GB physical address space the system chipset might need 0.5GB for system specific functions. That leaves you at most 3.5 GB available for RAM. But physical address space is also required for access to PCI devices which will further reduce the physical address space available for RAM.

    Lots of recent motherboards have a note accompanying their detailed specifications. The note says that with Windows 32 the maximum addressable memory will be at most 3.5 GB (maybe only 3GB).

    I'm not familiar with your system. Maybe the BIOS has an option to reduce space reserved for PCI devices or otherwise allow more RAM to be usable. Maybe a BIOS update will make more RAM available to the OS.

    If you boot with the -v flag, FreeBSD gives a very verbose startup output which includes the memory map the BIOS provides to the OS and details of memory space required by PCI devices. If you want to capture that and post it as a reply I'll take a look and see if I can see something that might allow you to use more RAM. At best, you are unlikely to be able to use much more than 3.5GB but the system chipset or BIOS might force a much lower figure.



  • wallaby, reread his original post.  freebsd is saying "4194304K of memory above 4GB ignored".  if he has 6gb of RAM, it should be ignoring 2gb or so.  it sounds like a bug of some kind.



  • i dl'ed the fbsd 7.2 kernel and was looking at the source.  it is printing this message because there was 2gb of memory below the 4gb boundary and that was cool.  the next chunk it went to process had a physmem base >= 4gb, so it ignored it.  i would go into your bios setup and look to see if there is anywhere where memory mapping is set up (most likely under advanced settings?)



  • @danswartz:

    wallaby, reread his original post.  freebsd is saying "4194304K of memory above 4GB ignored".  if he has 6gb of RAM, it should be ignoring 2gb or so.  it sounds like a bug of some kind.

    Some chipsets have the capability of remapping memory below 4GB to above 4GB. For example, if you have 6GB and want to leave a 2GB hole at 2GB (to accomodate PCI devices, chipset reserved physical addresses etc) then the memory in that hole is remapped above 4GB so the 6GB occupies physical addresses 0-2GB, 4GB to 8GB. I know of at least two Intel server chipsets that are capable of doing this, but at the moment don't recall their type numbers. I think they were something like E7520 and P5000.



  • yeah, i know.  see my follow up :)



  • Got a 4GB pfsense box, and seems everything is used (or at least 3.5Gb).

    Disable sound, serial port, LPT port, and other useless thing like IDE or floppy if you dont use it right now, it takes IRQ and mabe some adressable space too.


Log in to reply