[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20070414001035.GR10574@sequoia.sous-sol.org>
Date: Fri, 13 Apr 2007 17:10:35 -0700
From: Chris Wright <chrisw@...s-sol.org>
To: Jeremy Fitzhardinge <jeremy@...p.org>
Cc: "H. Peter Anvin" <hpa@...or.com>, Zachary Amsden <zach@...are.com>,
Chris Wright <chrisw@...s-sol.org>, Andi Kleen <ak@...e.de>,
"Eric W. Biederman" <ebiederm@...ssion.com>,
Linus Torvalds <torvalds@...l.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: Crash while mapping memory in pagetable_init() (Was: Re: .config)
* Jeremy Fitzhardinge (jeremy@...p.org) wrote:
> Subject: i386: map enough initial memory to create lowmem mappings
>
> 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.
Yup, fixes it up here, nice catch.
Acked-by: Chris Wright <chrisw@...s-sol.org>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists