[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080207084911.GA10959@elte.hu>
Date: Thu, 7 Feb 2008 09:49:11 +0100
From: Ingo Molnar <mingo@...e.hu>
To: Yinghai Lu <yhlu.kernel@...il.com>
Cc: Thomas Gleixner <tglx@...utronix.de>,
"H. Peter Anvin" <hpa@...or.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] x86_64: fix page table size
* Yinghai Lu <yhlu.kernel@...il.com> wrote:
> > btw., it would be nice to have some "lots of RAM simulation"
> > debugging code which would just _fake_ a really large e820 map and
> > would in the end throw away the 'fake' pages later during bootup.
> > Perhaps tell the early allocator to never allocate into these fake
> > areas [via an struct e820 entry flag], but all our sizing code and
> > the boot bitmaps, etc. would be sized accordingly, as if we had this
> > much RAM - and we'd trigger these nuances. We could put this into a
> > new "fakemem=128GB" boot option and hence we could boot with
> > fakemem=128GB on a 2GB box and could at least hope to be able to
> > boot [with some serious amount of RAM wasted on over-sized
> > pagetables, allocator bitmaps and mem_map[]]. Hm?
>
> sound interesting. but need some variable to prevent using non exist
> page.
yeah, exactly. You could try into using the "PG_arch_1" struct page
->flags bit - it's not utilized on x86. That way we could avoid free-ing
it into the general page pool. We could check for it in
arch/x86/mm/init_64.c's online_page() function [that's where we release
most pages into the page pool].
Perhaps it might also be handy to introduce a page_is_fake_ram(addr)
method that searches the e820 maps for fake ram, to make sure we never
allocate such ranges.
Such a feature would be very useful.
Ingo
--
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