--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: linux-image-2.6.32-5-xen-686: Dell Poweredge with xen hypervisor fails to boot
- From: Kari Pahula <kaol@debian.org>
- Date: Thu, 17 Feb 2011 16:03:55 +0200
- Message-id: <20110217140355.22486.89946.reportbug@asdf.telcont.fi>
Package: linux-2.6
Version: 2.6.32-30
Severity: important
The kernel version shipped with squeeze fails to boot with our Dell
Poweredge R310 server, when using Xen hypervisor. The last line
visible is "Scrubbing Free RAM: ...."
As described in this forum post:
http://xen.1045712.n5.nabble.com/xen4-kernel-crash-2-6-32-5-xen-amd64-poweredge-R710-w-s-td3262651.html
This patch fixes the issue:
http://git.kernel.org/?p=linux/kernel/git/jeremy/xen.git;a=commit;h=fa9bb82fe5b971cdbea301b76c9be709c4c34b29
I can verify that making this change fixed the issue for us. We're
running an i386 kernel on the server, if that matters. I've copied
the patch here too:
diff --git a/arch/x86/xen/setup.c b/arch/x86/xen/setup.c
index 2189432..eed895e 100644 (file)
--- a/arch/x86/xen/setup.c
+++ b/arch/x86/xen/setup.c
@@ -87,6 +87,11 @@ static unsigned long __init xen_release_chunk(phys_addr_t start_addr,
if (end <= start)
return 0;
+ if (end < PFN_DOWN(ISA_END_ADDRESS))
+ return 0;
+ if (start < PFN_DOWN(ISA_END_ADDRESS))
+ start = PFN_DOWN(ISA_END_ADDRESS);
+
printk(KERN_INFO "xen_release_chunk: looking at area pfn %lx-%lx: ",
start, end);
for(pfn = start; pfn < end; pfn++) {
@@ -159,6 +164,7 @@ char * __init xen_memory_setup(void)
rc = HYPERVISOR_memory_op(XENMEM_memory_map, &memmap);
if (rc == -ENOSYS) {
+ BUG_ON(xen_initial_domain());
memmap.nr_entries = 1;
map[0].addr = 0ULL;
map[0].size = mem_end;
@@ -196,9 +202,13 @@ char * __init xen_memory_setup(void)
}
/*
- * Even though this is normal, usable memory under Xen, reserve
- * ISA memory anyway because too many things think they can poke
+ * In domU, the ISA region is normal, usable memory, but we
+ * reserve ISA memory anyway because too many things poke
* about in there.
+ *
+ * In Dom0, the host E820 information can leave gaps in the
+ * ISA range, which would cause us to release those pages. To
+ * avoid this, we unconditionally reserve them here.
*/
e820_add_region(ISA_START_ADDRESS, ISA_END_ADDRESS - ISA_START_ADDRESS,
E820_RESERVED);
-- Package-specific info:
** Kernel log: boot messages should be attached
I can send a video if you want, but I can tell that the patch works.
-- System Information:
Debian Release: 6.0
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'stable')
Architecture: i386 (i686)
--- End Message ---