You are not logged in.

#1 2008-11-21 19:32:30

vor_lord
Member
From: Fort Collins, Colorado, USA
Registered: 2004-06-10
Posts: 52

[SOLVED] Kernel only sees 3G out of my 4G of memory

So I recently upgraded my motherboard/cpu/memory.  Everything went very smoothly thanks to the archlinux live CD and a quick mkinitpcio.

But now I get this:

strongbad:home/brett> cat /proc/meminfo
MemTotal:      3115460 kB
MemFree:       1060804 kB

This is an i686 install so I know the stock kernel will have a process limit under 4G, but I don't expect it not to see the total.

memtest86+ shows the full amount and it tests well.

This is P43 Intel chipset.

Any ideas?  I just have the stock kernel, is there something to tweak in it to see the rest?

Last edited by vor_lord (2008-11-26 22:31:28)

Offline

#2 2008-11-21 19:56:23

iBertus
Member
From: Greenville, NC
Registered: 2004-11-04
Posts: 2,228

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

This is posted at least ten times on the forums already. Short version -- You'll either need to recompile the kernel with highmem enabled or switch over the the 64-bit version.

Offline

#3 2008-11-21 20:09:11

SiC
Member
From: Liverpool, England
Registered: 2008-01-10
Posts: 429

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

If you don't want to reinstall, then you need to recompile your kernel. Considering your recent reinstall, it might be easier to just reinstall the 64bit version however, as you will not need to recompile the kernel for each new release.

Offline

#4 2008-11-21 21:36:17

vor_lord
Member
From: Fort Collins, Colorado, USA
Registered: 2004-06-10
Posts: 52

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

Thank you for the swift answer (even though it came with an RTFM smile )

My apologies, I did half a dozen forum searches  and a couple of wiki searches but wasn't sure what to ask for to find this issue.  Memory and kernel (the only identifying terms in my post title) are not exactly helpful in such searches sad

I didn't think to try 4G or 3G, I thought that was too generic (it may have worked).  You might suggest that I search for "highmem" but if I don't know that term I can't search for it.

At any rate a kernel recompilation should fix it for me which will be easy.

Thanks!

Offline

#5 2008-11-21 21:59:16

vor_lord
Member
From: Fort Collins, Colorado, USA
Registered: 2004-06-10
Posts: 52

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

strongbad:abs/kernel26> grep -i pkgver PKGBUILD
pkgver=2.6.27.6
_patchname="patch-${pkgver}-${pkgrel}-ARCH"
strongbad:abs/kernel26> pacman -Q kernel26
kernel26 2.6.27.5-1
strongbad:abs/kernel26> grep -i highmem config
# CONFIG_NOHIGHMEM is not set
CONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not set
CONFIG_HIGHMEM=y
# CONFIG_DEBUG_HIGHMEM is not set

Looks to me like highmem is already enabled in the kernel.

This is out of abs so version isn't exact but in the diffs I don't see the highmem settings changing from 2.6.27.5 to 2.6.27.6.

Is there something else I need to do to enable highmem?

edit:  n/m HIGHMEM64G is not set.  Even now I still get mixed up with the format of the config file.

Last edited by vor_lord (2008-11-21 22:19:14)

Offline

#6 2008-11-21 23:01:41

elmer_42
Member
From: /na/usa/ca
Registered: 2008-10-11
Posts: 427

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

You may want to try a full-blown 64bit install. If I am remembering correctly, a 32bit application can't read four gigabytes of memory even if highmem is enabled. Also, you won't have to rebuild your kernel every new release this way.


[ lamy + pilot ] [ arch64 | wmii ] [ ati + amd ]

Offline

#7 2008-11-22 00:48:27

lilsirecho
Veteran
Registered: 2003-10-24
Posts: 5,000

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

Try the following to determine the status of your HIGHMEM;

            ...................zcat /proc/config.gz |grep HIGHMEM....................

AFAICT you need two entries to establish HIGHMEM in kernel config...Set HIGHMEM64G=y...and ...set HIGHMEM=y

EDIT:A computer with PCIE (? not sure of nomenclature) is required for extended memory.  That s/b PAE!!!!

Last edited by lilsirecho (2008-11-22 01:46:42)


Sign of the times: Navajo blanket..made in China
Hard work does not kill people but why risk it: Charlie Mccarthy
A man is not complete until he is married..then..he is finished.
When ALL is lost, what can be found? Even bytes get lonely for a little bit!     X-ray confirms Iam spineless!

Offline

#8 2008-11-22 02:11:50

mrbug
Member
Registered: 2007-07-17
Posts: 221

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

I think that this thread should be cleaned up and stickied. The 32bit ~3GB RAM limit seems to be a VERY common problem...


dvdtube - download all uploads from a YouTube user and then optionally create a DVD.
(Regular version AUR link / SVN version AUR link)

Offline

#9 2008-11-22 03:47:41

vor_lord
Member
From: Fort Collins, Colorado, USA
Registered: 2004-06-10
Posts: 52

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

strongbad:home/brett> zcat /proc/config.gz |grep HIGHMEM
# CONFIG_NOHIGHMEM is not set
CONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not set
CONFIG_HIGHMEM=y
# CONFIG_DEBUG_HIGHMEM is not set

I tried this setting the 64G and the 4G true, but wasn't sure if that was appropriate.  I used to recompile my kernel every release until recently and I never had much of a problem but it is hanging trying to start X even though I reinstalled nvidia.  That problem is probably unrelated.

Trying again with just 64G set to y, we'll see if that shows more usable memory at least and then I will work on the X problems.


EDIT:  Ok after fixing my nvidia issues (naturally a change like this would require a true recompile):

strongbad:home/brett> zcat /proc/config.gz |grep HIGHMEM
# CONFIG_NOHIGHMEM is not set
# CONFIG_HIGHMEM4G is not set
CONFIG_HIGHMEM64G=y
CONFIG_HIGHMEM=y
# CONFIG_DEBUG_HIGHMEM is not set
strongbad:home/brett> cat /proc/meminfo  | head -n 2
MemTotal:      4147596 kB
MemFree:       3755300 kB

Thanks everyone for your help.

Last edited by vor_lord (2008-11-22 03:59:19)

Offline

#10 2008-11-22 03:51:31

iBertus
Member
From: Greenville, NC
Registered: 2004-11-04
Posts: 2,228

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

Sorry, I wasn't trying to be snippy.

Offline

#11 2008-11-22 17:46:30

R00KIE
Forum Moderator
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 3,381

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

I'm on the same boat as you, 4G ram and just using 3.something.
I had an idea about that. Since people seem to start using 4G of ram more and more and using a 64bit flavor may cause some trouble using 32bit only apps, how about having an alternate 32bit kernel with CONFIG_HIGHMEM64G=y enabled.
The install images would have and install the one everyone uses now, so no compatibility problems there, but then people with 4+ GB of ram and with CPUs with PAE could just do pacman -S kernel26pae and replace the "stock" kernel with one supporting more memory. From there on when issuing pacman -Syu the pae flavor would be downloaded and installed.
Just an idea, it seems a good one for me though.


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#12 2008-11-22 17:54:28

moljac024
Member
From: Serbia
Registered: 2008-01-29
Posts: 2,676

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

R00KIE wrote:

I'm on the same boat as you, 4G ram and just using 3.something.
I had an idea about that. Since people seem to start using 4G of ram more and more and using a 64bit flavor may cause some trouble using 32bit only apps, how about having an alternate 32bit kernel with CONFIG_HIGHMEM64G=y enabled.
The install images would have and install the one everyone uses now, so no compatibility problems there, but then people with 4+ GB of ram and with CPUs with PAE could just do pacman -S kernel26pae and replace the "stock" kernel with one supporting more memory. From there on when issuing pacman -Syu the pae flavor would be downloaded and installed.
Just an idea, it seems a good one for me though.

Yes, multiple distributions do things that way, and it's perfectly fine.
But I don't think that's gonna happen here, seeing as how Arch is all about keeping it simple and doing it yourself.

Last edited by moljac024 (2008-11-22 18:04:44)


The day Microsoft makes a product that doesn't suck, is the day they make a vacuum cleaner.
--------------------------------------------------------------------------------------------------------------
But if they tell you that I've lost my mind, maybe it's not gone just a little hard to find...

Offline

#13 2008-11-23 17:47:26

RedShift
Member
From: Belgium
Registered: 2004-07-16
Posts: 230

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

PAE is not without problems and incurs a performance penalty.


:?

Offline

#14 2008-11-24 00:10:40

jacko
Member
Registered: 2007-11-23
Posts: 840

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

strongbad:home/brett> cat /proc/meminfo  | head -n 2
MemTotal:      4147596 kB
MemFree:       3755300 kB

there are other options in the kernel that can be turned off to save memory for your programs. IE. the number of cores your kernel is compiled to be able to use, I think it's 32kb's for each core. Default is 8 cores. Do you have 8 cores?

Last edited by jacko (2008-11-24 00:14:29)

Offline

#15 2008-11-24 00:12:49

jacko
Member
Registered: 2007-11-23
Posts: 840

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

my POV is this, if your happy compiling a kernel, then go a little overboard and tweak it a little.

Save your builds revision history with git, easy back-up's.

Offline

#16 2008-11-24 18:18:59

R00KIE
Forum Moderator
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 3,381

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

jacko wrote:

my POV is this, if your happy compiling a kernel, then go a little overboard and tweak it a little.

Save your builds revision history with git, easy back-up's.

It's what I did .... sort of, I have changed a few things (not many) from the default arch config ( 64G + K8 arch + 100Hz timer ( seems to help a bit with the problem I'm having with sound hmm )) .... but git ..... still have to check that out tongue
On the other hand I'm not completely ready to jump on the 64bit bandwagon yet (although I have a second partition with Arch64 installed big_smile to mess around until I'm ready). My previous experience with 64bit wasn't so good (Ubuntu 7.10) so i'm going to take it easy now big_smile.
Still have to look into the 32bit libs stuff and skype and some 32 bit programs I need to use, everything else seems to be working ok (except sound capture ..... makes me mad mad )


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#17 2008-11-26 22:29:54

vor_lord
Member
From: Fort Collins, Colorado, USA
Registered: 2004-06-10
Posts: 52

Re: [SOLVED] Kernel only sees 3G out of my 4G of memory

jacko wrote:
strongbad:home/brett> cat /proc/meminfo  | head -n 2
MemTotal:      4147596 kB
MemFree:       3755300 kB

there are other options in the kernel that can be turned off to save memory for your programs. IE. the number of cores your kernel is compiled to be able to use, I think it's 32kb's for each core. Default is 8 cores. Do you have 8 cores?

I do not.  I have a Core 2 Duo is all.  If I'm already compiling it myself... I definitely am interested in any other tweaks I can throw in while I am at it.  While I've been doing my own kernel compiles for a while, I have done little looking at other things to tweak while I am at it to give performance increases.

CONFIG_NR_CPUS=16

Is this relevant?

edit:  How do I check the size of my kernel image?  Doesn't seem like 8k per CPU is much to worry about.

Last edited by vor_lord (2008-11-26 23:41:03)

Offline

Board footer

Powered by FluxBB