[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20090818172552.779d0768.kamezawa.hiroyu@jp.fujitsu.com>
Date: Tue, 18 Aug 2009 17:25:52 +0900
From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
To: Amerigo Wang <amwang@...hat.com>
Cc: "Eric W. Biederman" <ebiederm@...ssion.com>,
linux-kernel@...r.kernel.org, tony.luck@...el.com,
linux-ia64@...r.kernel.org, linux-mm@...ck.org,
Neil Horman <nhorman@...hat.com>,
Andi Kleen <andi@...stfloor.org>, akpm@...ux-foundation.org,
bernhard.walle@....de, Fenghua Yu <fenghua.yu@...el.com>,
Ingo Molnar <mingo@...e.hu>,
Anton Vorontsov <avorontsov@...mvista.com>
Subject: Re: [Patch 8/8] kexec: allow to shrink reserved memory
On Tue, 18 Aug 2009 14:31:23 +0800
Amerigo Wang <amwang@...hat.com> wrote:
> Hi, thank you!
> > Can I have a question ?
> >
> > - How crash kernel's memory is preserved at boot ?
> >
>
> Use bootmem, I think.
>
I see.
In x86,
setup_arch()
-> reserve_crashkernel()
-> find_and_reserve_crashkernel()
-> reserve_bootmem_generic()
Then, all "active range" is already registered and there are memmap.
> > It's hidden from the system before mem_init() ?
> >
>
> Not sure, but probably yes. It is reserved in setup_arch() which is
> before mm_init() which calls mem_init().
>
> Do you have any advice to free that reserved memory after boot? :)
>
Let's see arch/x86/mm/init.c::free_initmem()
Maybe it's all you want.
- ClearPageReserved()
- init_page_count()
- free_page()
- totalram_pages++
But it has no argumetns. Maybe you need your own function or modification.
online_pages() does very similar. But, hmm,.. writing something open coded one
for crashkernel is not very bad, I think.
Thanks,
-Kame
--
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