2009-01-22 21:05:07

by David Ronis

[permalink] [raw]
Subject: Memory not being reported

I'm running 2.6.28.1 on an i686 (slackware-12.1 for the most part) box.
I recently added some extra memory, expanding from 2Gb to 4. Everything
works as expected except that not all of the memory seems to be seen.

free returns:

total used free shared buffers
cached
Mem: 3374860 2099504 1275356 0 86612
1032024
-/+ buffers/cache: 980868 2393992
Swap: 497972 0 497972


and cat /proc/meminfo gives:

MemTotal: 3374860 kB
MemFree: 1199184 kB
Buffers: 86816 kB
Cached: 1036240 kB
SwapCached: 0 kB
Active: 1375864 kB

etc.

On the other hand, user-space tools like lshw show the 4 1Gb DIMMS as
does the BIOS configuration boot menu.

One suspicion is that the configure option CONFIG_HIGHMEM4G=y
should be unset and the CONFIG_HIGHMEM64G should be.

Any help would be appreciated, as would a separate CC since I don't
subscribe to the list.

Thanks in advance

David


2009-01-22 22:59:27

by Wakko Warner

[permalink] [raw]
Subject: Re: Memory not being reported

David Ronis wrote:
> I'm running 2.6.28.1 on an i686 (slackware-12.1 for the most part) box.
> I recently added some extra memory, expanding from 2Gb to 4. Everything
> works as expected except that not all of the memory seems to be seen.

I'm running on 2.6.24.3 right now which is irrelevent. Is your system
x86_64 capable? This specific machine is not. It's an older dual xeon 533mhz
fsb.

> free returns:
>
> total used free shared buffers
> cached
> Mem: 3374860 2099504 1275356 0 86612
> 1032024
> -/+ buffers/cache: 980868 2393992
> Swap: 497972 0 497972

total used free shared buffers cached
Mem: 4019196 1342956 2676240 0 405712 223672
-/+ buffers/cache: 713572 3305624
Swap: 0 0 0


> On the other hand, user-space tools like lshw show the 4 1Gb DIMMS as
> does the BIOS configuration boot menu.

lshw IIRC uses dmi information to obtain that information.

> One suspicion is that the configure option CONFIG_HIGHMEM4G=y
> should be unset and the CONFIG_HIGHMEM64G should be.

# grep HIGH .config
# CONFIG_HIGH_RES_TIMERS is not set
# CONFIG_NOHIGHMEM is not set
# CONFIG_HIGHMEM4G is not set
CONFIG_HIGHMEM64G=y
CONFIG_HIGHMEM=y
# CONFIG_HIGHPTE is not set
#

I see no reason not to use highmem 64gb I've used it on several of my
systems, even ones that can't handle more than 2gb w/o problems.

One thing I have noticed (which is irrelevent to your question) is that I
see about 100mb less memory running a 64-bit kernel vs a 32-bit kernel on 2
systems (different brand of motherboard) and 4gb. One was upgraded to 8gb;
32-bit shows about 8400000kb memory and running 64-bit shows about 8200000kb
memory. Noone has answered my question as to why that is.

--
Lab tests show that use of micro$oft causes cancer in lab animals
Got Gas???

2009-01-23 12:44:19

by markus reichelt

[permalink] [raw]
Subject: Re: Memory not being reported

* David Ronis <[email protected]> wrote:

> I'm running 2.6.28.1 on an i686 (slackware-12.1 for the most part)
> box. I recently added some extra memory, expanding from 2Gb to 4.
> Everything works as expected except that not all of the memory
> seems to be seen.

I've got a comparable system, and could only see about 3G of the
installed 4G.


> One suspicion is that the configure option CONFIG_HIGHMEM4G=y
> should be unset and the CONFIG_HIGHMEM64G should be.

Indeed, using CONFIG_HIGHMEM64G does the trick for me, 4G usuable.

(I've also CONFIG_RESOURCES_64BIT set, maybe that's needed as well)

--
left blank, right bald


Attachments:
(No filename) (643.00 B)
(No filename) (189.00 B)
Download all attachments

2009-01-24 08:37:28

by Robert Hancock

[permalink] [raw]
Subject: Re: Memory not being reported

David Ronis wrote:
> I'm running 2.6.28.1 on an i686 (slackware-12.1 for the most part) box.
> I recently added some extra memory, expanding from 2Gb to 4. Everything
> works as expected except that not all of the memory seems to be seen.
>
> free returns:
>
> total used free shared buffers
> cached
> Mem: 3374860 2099504 1275356 0 86612
> 1032024
> -/+ buffers/cache: 980868 2393992
> Swap: 497972 0 497972
>
>
> and cat /proc/meminfo gives:
>
> MemTotal: 3374860 kB
> MemFree: 1199184 kB
> Buffers: 86816 kB
> Cached: 1036240 kB
> SwapCached: 0 kB
> Active: 1375864 kB
>
> etc.
>
> On the other hand, user-space tools like lshw show the 4 1Gb DIMMS as
> does the BIOS configuration boot menu.
>
> One suspicion is that the configure option CONFIG_HIGHMEM4G=y
> should be unset and the CONFIG_HIGHMEM64G should be.

Yes, it should be. However, if your chipset doesn't support remapping
memory above the 4GB mark (some don't, and this is needed in this case
because various IO areas use up some of the address space below 4GB)
then it won't be possible to make use of any of that RAM.

Note that when running with more than 4GB of RAM it's generally
preferable to run a 64-bit kernel if the machine supports it.

>
> Any help would be appreciated, as would a separate CC since I don't
> subscribe to the list.
>
> Thanks in advance
>
> David
>

2009-01-25 17:13:45

by David Ronis

[permalink] [raw]
Subject: Re: Memory not being reported

I don't think this is a 64bit capable box. Nonetheless, there are only
4G of memory, not more, and I still see 3G of it.

David



On Sat, 2009-01-24 at 02:37 -0600, Robert Hancock wrote:
> David Ronis wrote:
> > I'm running 2.6.28.1 on an i686 (slackware-12.1 for the most part) box.
> > I recently added some extra memory, expanding from 2Gb to 4. Everything
> > works as expected except that not all of the memory seems to be seen.
> >
> > free returns:
> >
> > total used free shared buffers
> > cached
> > Mem: 3374860 2099504 1275356 0 86612
> > 1032024
> > -/+ buffers/cache: 980868 2393992
> > Swap: 497972 0 497972
> >
> >
> > and cat /proc/meminfo gives:
> >
> > MemTotal: 3374860 kB
> > MemFree: 1199184 kB
> > Buffers: 86816 kB
> > Cached: 1036240 kB
> > SwapCached: 0 kB
> > Active: 1375864 kB
> >
> > etc.
> >
> > On the other hand, user-space tools like lshw show the 4 1Gb DIMMS as
> > does the BIOS configuration boot menu.
> >
> > One suspicion is that the configure option CONFIG_HIGHMEM4G=y
> > should be unset and the CONFIG_HIGHMEM64G should be.
>
> Yes, it should be. However, if your chipset doesn't support remapping
> memory above the 4GB mark (some don't, and this is needed in this case
> because various IO areas use up some of the address space below 4GB)
> then it won't be possible to make use of any of that RAM.
>
> Note that when running with more than 4GB of RAM it's generally
> preferable to run a 64-bit kernel if the machine supports it.
>
> >
> > Any help would be appreciated, as would a separate CC since I don't
> > subscribe to the list.
> >
> > Thanks in advance
> >
> > David
> >
>

2009-01-25 20:10:49

by Robert Hancock

[permalink] [raw]
Subject: Re: Memory not being reported

David Ronis wrote:
> I don't think this is a 64bit capable box. Nonetheless, there are only
> 4G of memory, not more, and I still see 3G of it.

Can you post your dmesg output from bootup?

>
> David
>
>
>
> On Sat, 2009-01-24 at 02:37 -0600, Robert Hancock wrote:
>> David Ronis wrote:
>>> I'm running 2.6.28.1 on an i686 (slackware-12.1 for the most part) box.
>>> I recently added some extra memory, expanding from 2Gb to 4. Everything
>>> works as expected except that not all of the memory seems to be seen.
>>>
>>> free returns:
>>>
>>> total used free shared buffers
>>> cached
>>> Mem: 3374860 2099504 1275356 0 86612
>>> 1032024
>>> -/+ buffers/cache: 980868 2393992
>>> Swap: 497972 0 497972
>>>
>>>
>>> and cat /proc/meminfo gives:
>>>
>>> MemTotal: 3374860 kB
>>> MemFree: 1199184 kB
>>> Buffers: 86816 kB
>>> Cached: 1036240 kB
>>> SwapCached: 0 kB
>>> Active: 1375864 kB
>>>
>>> etc.
>>>
>>> On the other hand, user-space tools like lshw show the 4 1Gb DIMMS as
>>> does the BIOS configuration boot menu.
>>>
>>> One suspicion is that the configure option CONFIG_HIGHMEM4G=y
>>> should be unset and the CONFIG_HIGHMEM64G should be.
>> Yes, it should be. However, if your chipset doesn't support remapping
>> memory above the 4GB mark (some don't, and this is needed in this case
>> because various IO areas use up some of the address space below 4GB)
>> then it won't be possible to make use of any of that RAM.
>>
>> Note that when running with more than 4GB of RAM it's generally
>> preferable to run a 64-bit kernel if the machine supports it.
>>
>>> Any help would be appreciated, as would a separate CC since I don't
>>> subscribe to the list.
>>>
>>> Thanks in advance
>>>
>>> David
>>>
>