Re: [PATCH 10/28] i386: map enough initial memory to create lowmemmappings

From: Chuck Ebbert
Date: Thu Apr 19 2007 - 16:48:53 EST


Jeremy Fitzhardinge wrote:
> head.S creates the very initial pagetable for the kernel. This just
> maps enough space for the kernel itself, and an allocation bitmap.
> The amount of mapped memory is rounded up to 4Mbytes, and so this
> typically ends up mapping 8Mbytes of memory.
>
> When booting, pagetable_init() needs to create mappings for all
> lowmem, and the pagetables for these mappings are allocated from the
> free pages around the kernel in low memory. If the number of
> pagetable pages + kernel size exceeds head.S's initial mapping, it
> will end up faulting on an unmapped page. This will only happen with
> specific combinations of kernel size and memory size.
>
> This patch makes sure that head.S also maps enough space to fit the
> kernel pagetables as well as the kernel itself. It ends up using an
> additional two pages of unreclaimable memory.
>
> Signed-off-by: Jeremy Fitzhardinge <jeremy@xxxxxxxxxxxxx>
> Acked-by: "H. Peter Anvin" <hpa@xxxxxxxxx>
> Cc: Andi Kleen <ak@xxxxxxx>
> Cc: Zachary Amsden <zach@xxxxxxxxxx>
> Cc: Chris Wright <chrisw@xxxxxxxxxxxx>
> Cc: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
> Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>,

Is some version of this going in for 2.6.21, or is it not a real problem?
-
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/