From: "H. Peter Anvin" <hpa@zytor.com>
To: Vivek Goyal <vgoyal@redhat.com>
Cc: Yinghai Lu <yinghai@kernel.org>,
Stanislaw Gruszka <sgruszka@redhat.com>,
Ingo Molnar <mingo@elte.hu>, Thomas Gleixner <tglx@linutronix.de>,
Maxim Uvarov <muvarov@gmail.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Neil Horman <nhorman@redhat.com>
Subject: Re: kdump broken on 2.6.37-rc4
Date: Fri, 17 Dec 2010 11:56:23 -0800 [thread overview]
Message-ID: <4D0BC067.90507@zytor.com> (raw)
In-Reply-To: <20101217195035.GE14502@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 999 bytes --]
On 12/17/2010 11:50 AM, Vivek Goyal wrote:
> On Fri, Dec 17, 2010 at 11:46:08AM -0800, Yinghai Lu wrote:
>> On 12/17/2010 11:39 AM, H. Peter Anvin wrote:
>>> On 12/17/2010 10:21 AM, Yinghai Lu wrote:
>>>>>>
>>>>>> Do we have actual testing for how high the 64-bit kernel will load?
>>>>>
>>>>> I will do some experiments on my box today and let you know.
>>>>
>>>> if bzImage is used, it is 896M.
>>>>
>>>
>>> Why? 896 MiB is a 32-bit kernel limitation which doesn't have anything
>>> to do with the bzImage format.
>>>
>>> So unless there is something going on here, I suspect you're just plain
>>> flat wrong.
>>
>> kexec-tools have some checking when it loads bzImage.
>>
>
> Yinghai,
>
> I think x86_64 might have just inherited the settings of 32bit without
> giving it too much of thought. At that point of time nobody bothered
> to load the kernel from high addresses. So these might be artificial
> limits.
>
Can we do this in the meantime, just so we fix the immediate problem?
-hpa
[-- Attachment #2: 0001-x86-kexec-Limit-the-crashkernel-address-to-768-MiB.patch --]
[-- Type: text/x-patch, Size: 2014 bytes --]
>From 1ec83ca8dcc85bc5810bf7407d470a7261be1372 Mon Sep 17 00:00:00 2001
From: H. Peter Anvin <hpa@linux.intel.com>
Date: Thu, 16 Dec 2010 19:20:41 -0800
Subject: [PATCH] x86, kexec: Limit the crashkernel address to 768 MiB
Keep the crash kernel address below 768 MiB. This makes it work on
32 bits even if the vmalloc= setting is adjusted slightly.
For 64 bits, we should be able to increase this substantially once a
hard-coded 896 MiB limit in kexec-tools is fixed.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Cc: Vivek Goyal <vgoyal@redhat.com>
Cc: Stanislaw Gruszka <sgruszka@redhat.com>
Cc: Yinghai Lu <yinghai@kernel.org>
LKML-Reference: <20101217195035.GE14502@redhat.com>
---
arch/x86/kernel/setup.c | 13 ++++++++++---
1 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index 21c6746..2b7f5ab 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -501,7 +501,14 @@ static inline unsigned long long get_total_mem(void)
return total << PAGE_SHIFT;
}
-#define DEFAULT_BZIMAGE_ADDR_MAX 0x37FFFFFF
+/*
+ * Keep the crash kernel below this limit. This should be sufficient
+ * to load a 32-bit kernel even if the vmalloc limit is modified
+ * (within reason.) This can be increased on 64 bits once kexec-tools
+ * is fixed.
+ */
+#define CRASH_KERNEL_ADDR_MAX (768 << 20)
+
static void __init reserve_crashkernel(void)
{
unsigned long long total_mem;
@@ -520,10 +527,10 @@ static void __init reserve_crashkernel(void)
const unsigned long long alignment = 16<<20; /* 16M */
/*
- * kexec want bzImage is below DEFAULT_BZIMAGE_ADDR_MAX
+ * kexec want bzImage is below CRASH_KERNEL_ADDR_MAX
*/
crash_base = memblock_find_in_range(alignment,
- DEFAULT_BZIMAGE_ADDR_MAX, crash_size, alignment);
+ CRASH_KERNEL_ADDR_MAX, crash_size, alignment);
if (crash_base == MEMBLOCK_ERROR) {
pr_info("crashkernel reservation failed - No suitable area found.\n");
--
1.7.2.3
next prev parent reply other threads:[~2010-12-17 19:57 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-03 11:16 kdump broken on 2.6.37-rc4 Stanislaw Gruszka
2010-12-03 15:46 ` Maxim Uvarov
2010-12-03 17:11 ` Stanislaw Gruszka
2010-12-03 17:54 ` Neil Horman
2010-12-07 10:50 ` Stanislaw Gruszka
2010-12-07 19:24 ` Yinghai Lu
2010-12-08 14:19 ` Stanislaw Gruszka
2010-12-09 7:16 ` Yinghai Lu
2010-12-09 12:41 ` Stanislaw Gruszka
2010-12-09 20:09 ` Yinghai Lu
2010-12-13 10:08 ` Stanislaw Gruszka
2010-12-13 18:20 ` Yinghai Lu
2010-12-13 19:47 ` H. Peter Anvin
2010-12-14 22:41 ` Vivek Goyal
2010-12-15 10:39 ` Stanislaw Gruszka
2010-12-15 22:41 ` Yinghai Lu
2010-12-16 4:29 ` Yinghai Lu
2010-12-16 10:00 ` Stanislaw Gruszka
2010-12-16 16:16 ` H. Peter Anvin
2010-12-16 16:22 ` Vivek Goyal
2010-12-16 16:53 ` H. Peter Anvin
2010-12-18 21:50 ` Yinghai Lu
2010-12-16 14:39 ` Vivek Goyal
2010-12-16 16:28 ` H. Peter Anvin
2010-12-16 17:28 ` Yinghai Lu
2010-12-16 19:58 ` H. Peter Anvin
2010-12-16 22:57 ` Yinghai Lu
2010-12-16 23:30 ` Yinghai Lu
2010-12-16 23:49 ` Yinghai Lu
2010-12-17 0:39 ` Yinghai Lu
2010-12-17 1:06 ` H. Peter Anvin
2010-12-17 1:21 ` H. Peter Anvin
2010-12-17 1:51 ` H. Peter Anvin
2010-12-17 3:05 ` Yinghai Lu
2010-12-17 3:07 ` Yinghai Lu
2010-12-17 3:19 ` [tip:x86/urgent] x86-32: Make sure we can map all of lowmem if we need to tip-bot for H. Peter Anvin
2010-12-17 14:33 ` Stanislaw Gruszka
2010-12-16 22:01 ` kdump broken on 2.6.37-rc4 Vivek Goyal
2010-12-16 22:58 ` Yinghai Lu
2010-12-17 16:15 ` Vivek Goyal
2010-12-17 1:15 ` H. Peter Anvin
2010-12-17 3:31 ` H. Peter Anvin
2010-12-17 3:58 ` Yinghai
2010-12-17 4:08 ` H. Peter Anvin
2010-12-17 4:46 ` Yinghai Lu
2010-12-17 5:16 ` H. Peter Anvin
2010-12-17 17:01 ` Vivek Goyal
2010-12-17 17:56 ` H. Peter Anvin
2010-12-17 18:02 ` Vivek Goyal
2010-12-17 18:21 ` Yinghai Lu
2010-12-17 18:35 ` Vivek Goyal
2010-12-17 19:39 ` H. Peter Anvin
2010-12-17 19:46 ` Yinghai Lu
2010-12-17 19:50 ` Vivek Goyal
2010-12-17 19:52 ` Yinghai Lu
2010-12-17 20:01 ` Vivek Goyal
2010-12-17 20:06 ` Yinghai Lu
2010-12-17 20:34 ` Vivek Goyal
2010-12-17 23:51 ` Vivek Goyal
2010-12-17 19:56 ` H. Peter Anvin [this message]
2010-12-17 20:11 ` Vivek Goyal
2010-12-17 20:59 ` H. Peter Anvin
2010-12-17 21:13 ` Vivek Goyal
2010-12-20 16:31 ` Stanislaw Gruszka
2010-12-18 4:34 ` [tip:x86/urgent] x86, kexec: Limit the crashkernel address appropriately tip-bot for H. Peter Anvin
2010-12-17 19:50 ` kdump broken on 2.6.37-rc4 H. Peter Anvin
2010-12-13 10:25 ` Américo Wang
2010-12-05 14:35 ` Maciej Rutecki
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=4D0BC067.90507@zytor.com \
--to=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=muvarov@gmail.com \
--cc=nhorman@redhat.com \
--cc=sgruszka@redhat.com \
--cc=tglx@linutronix.de \
--cc=vgoyal@redhat.com \
--cc=yinghai@kernel.org \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).