Re: [PATCH 1/1] x86: Exclude E820_RESERVED regions and memory holesabove 4 GB from direct mapping.

From: H. Peter Anvin
Date: Fri Dec 16 2011 - 19:57:55 EST


On 12/16/2011 12:59 PM, Yinghai Lu wrote:
> On Fri, Dec 16, 2011 at 10:32 AM, H. Peter Anvin <hpa@xxxxxxxxx> wrote:
>>
>> Well, there are two options for memory hotplug: either we always leave
>> address space that can be used for memory hotplug mapped at all times, or we
>> need to track it anyway. Either way we need to know where there regions
>> are. Am I correct that right now we always map memory hotpluggable regions,
>> being below the top pfn?
>
> in arch/x86/mm/init_64.c::arch_add_memory()
> it will call init_memory_mapping to map new added memory.
> and will update max_pfn_mapped, max-pfn, max_low_pfn.
>

OK, so that would seem to match the invariant that all the memory blocks
which are RAM have mappings, and the ones that don't don't have them, or
is that violated elsewhere? Either way, the same notion applies -- we
should either leverage an existing range map or have a new one, but
there is nothing magic about holes above or below the 4 GiB boundary;
the only "magic" is for 32 bits the HIGHMEM boundary and < 1 MiB
(because of the fixed MTRRs).

-hpa

--
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/