LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Yinghai Lu <yhlu.kernel@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] x86_64: fix page table size
Date: Thu, 7 Feb 2008 09:49:11 +0100	[thread overview]
Message-ID: <20080207084911.GA10959@elte.hu> (raw)
In-Reply-To: <86802c440802070036w1aced44ft8ab880e8ddeedc85@mail.gmail.com>


* Yinghai Lu <yhlu.kernel@gmail.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

      reply	other threads:[~2008-02-07  8:49 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-06 20:46 my config doesnt compile in your tree Yinghai Lu
2008-02-06 21:53 ` Ingo Molnar
2008-02-06 23:01   ` Yinghai Lu
     [not found]     ` <20080206231226.GA6417@elte.hu>
2008-02-07  4:22       ` [PATCH] x86_64: fix page table size Yinghai Lu
2008-02-07  4:23         ` [PATCH] x86_64: clean up find_e820_area Yinghai Lu
2008-02-07  8:12           ` Ingo Molnar
2008-02-07  7:23         ` [PATCH] x86_64: fix page table size Andi Kleen
2008-02-07 11:54           ` Ingo Molnar
2008-02-07 17:28             ` Andi Kleen
2008-02-07  8:09         ` Ingo Molnar
2008-02-07  8:36           ` Yinghai Lu
2008-02-07  8:49             ` Ingo Molnar [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080207084911.GA10959@elte.hu \
    --to=mingo@elte.hu \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=yhlu.kernel@gmail.com \
    --subject='Re: [PATCH] x86_64: fix page table size' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).