From mboxrd@z Thu Jan 1 00:00:00 1970 From: Warner Wang Subject: [PATCH] x86: keep the crash kernel below 896 MiB Date: Thu, 25 Apr 2013 16:57:03 +0800 Message-ID: <1366880223-15439-1-git-send-email-warner.wang@hp.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: keir@xen.org, jbeulich@suse.com Cc: Warner Wang , xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org When use the crashkernel=size parameter without specifying a "@xM" suffix, the crashkernel will be reserved at the highest suitable address of memory, this will make the kexec-tools fail to work. The current kexec-tools have a limitation that it can only work with crashkernel reserved under 896 MiB. we can increase this limit once kexec-tools are fixed. Linux kernel itself have this code for kexec-tools limitation, so I think Xen code should also have it. Signed-off-by: Warner Wang --- xen/arch/x86/setup.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c index 43301a5..ae4c947 100644 --- a/xen/arch/x86/setup.c +++ b/xen/arch/x86/setup.c @@ -943,6 +943,13 @@ void __init __start_xen(unsigned long mbi_p) } } + /* + * Keep the crash kernel below this limit. On 64 bits, kexec-tools + * currently limits us to 896 MiB; increase this limit once kexec-tools + * are fixed. + */ + e = min_t(uint64_t, e, 896 << 20); + /* Don't overlap with modules. */ e = consider_modules(s, e, PAGE_ALIGN(kexec_crash_area.size), mod, mbi->mods_count, -1); -- 1.7.1