Re: [PATCH 1/3] x86: calculate precisely the memory needed byinit_memory_mapping

From: Stefano Stabellini
Date: Tue Jun 21 2011 - 13:53:15 EST


On Mon, 20 Jun 2011, H. Peter Anvin wrote:
> On 06/07/2011 11:13 AM, stefano.stabellini@xxxxxxxxxxxxx wrote:
> >
> > - remove the extra page added on x86_32 for the fixmap because is not
> > needed: the PMD entry is already allocated and contiguous for the whole
> > range (a PMD page covers 4G of virtual addresses) and the pte entry is
> > already allocated by early_ioremap_init.
> >
>
> Hi Stefano,
>
> I think this is wrong. A PMD page covers *1G* of virtual addresses, and
> in the 2+2 and 1+3 memory configurations, we may or may not need a
> separate PMD for the fixmap.
>
> Am I missing something?

You are right, a PMD page covers 1G of virtual addresses so that part of
the explanation in the comment is wrong.

The reason why we don't need a separate PMD for the fixmap is that in
both PAE and non-PAE cases the last gigabyte of virtual addresses is
always covered by the initial allocation in head_32.S (swapper_pg_dir or
initial_pg_pmd).
--
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/