Re: Does Linux have plan to support memory hole remapping?

From: Andi Kleen
Date: Wed Apr 09 2008 - 05:59:16 EST


On Wed, Apr 09, 2008 at 11:50:00AM +0200, Arne Georg Gleditsch wrote:
> Andi Kleen <andi@xxxxxxxxxxxxxx> writes:
>
> > "Zhao Forrest" <forrest.zhao@xxxxxxxxx> writes:
> >>
> >> As we can see from above information that the physical memory in system
> >> is 32768MB(32GB). However OS is only using about
> >> (32768-512)MB(MemTotal: 33010240 kB). Does this mean that this
> >> linux kernel can't use the physical memory remapped
> >> from (4G-512M, 4G) to (32G, 32G+512M)?
> >
> > The linux kernel can only use the memory passed to it by the BIOS.
> > Sometimes they need special BIOS setup options to enable remapping. If
> > there are no such options and you can't upgrade it you're out of luck
>
> Hm, wouldn't the given e820 map and mtrr listing indicate that 512M were
> actually remapped to 32G+ in this case?

The way it usually works (if it is implemented correctly in the BIOS)
is that all memory starting at the hole moves up together
(often subject to DIMM boundaries etc.),
not that the area below the hole is remapped individually.

BTW it is not actually 512MB that is lost. MemTotal does not
include mem_map and that alone is ~512MB (64 bytes for each 4K page)

So as far as I can see there is no missing memory remapping in Zhao's case,
he's just confused by the MemTotal semantics.

-Andi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/