kexec/i386: allocate page table pages dynamically
authorHuang Ying <ying.huang@intel.com>
Fri, 31 Oct 2008 01:48:08 +0000 (09:48 +0800)
committerIngo Molnar <mingo@elte.hu>
Fri, 31 Oct 2008 09:01:56 +0000 (10:01 +0100)
commit92be3d6bdf2cb34972ab50e12ad4da1076e690da
tree6ed10cb8a14615ca0bda48f64520c82480397d00
parent31498a01496ffca3b542bae72b8ec499cd9302db
kexec/i386: allocate page table pages dynamically

Impact: save .text size when kexec is built in but not loaded

This patch adds an architecture specific struct kimage_arch into
struct kimage. The pointers to page table pages used by kexec are
added to struct kimage_arch. The page tables pages are dynamically
allocated in machine_kexec_prepare instead of statically from BSS
segment. This will save up to 20k memory when kexec image is not
loaded.

Signed-off-by: Huang Ying <ying.huang@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/include/asm/kexec.h
arch/x86/kernel/machine_kexec_32.c
include/linux/kexec.h