On 23 Mar 2006 03:43:06 +0100
Andi Kleen <[EMAIL PROTECTED]> wrote:

> > For example, our server (ia64/Fujitsu PrimeQuest) can equip memory from
> > 4G to 1T(maybe 2T in future), and SRAT will *always* say  we have possible 
> > 1T memory.
> > (Microsoft requires "write all possible memory in SRAT") 
> > When we reserve memmap for possible 1T memory, Linux will not work well in 
> > minimum 4G
> 
> Don't do that.
> The x86-64 kernel will preallocate memmaps when everything is enabled soon.
> Ok that won't concern your IA64 machine immediately.
> 

Okay... I took several cups of coffee and understood what you say.and what 
x86_64 does.

If X86_64=y and CONFIG_MEMORY_HOTPLUG=n, system works like this..

1. preallocate all memmap, for memory range in SRAT. initialize all.
   just don't free pages (page struct) at boot time.

2. pre-initialize all pgdat/zone. even if ther are empty.(but have huge amount 
of
   reserved pages(memmap))

3. When add_memory() is called, just call free_page(page) and make pages 
populated. 

4. 

5. Only problem is firmware configurated as "small memory + huge SRAT entry".

Correct ?

Note: "enabled" in SRAT just means "you can read this entry". not means "memory 
is present".

--Kame

-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to