Re: [PATCH 00 of 36] x86/paravirt: groundwork for 64-bit Xen support

From: Jeremy Fitzhardinge
Date: Thu Jun 26 2008 - 15:03:21 EST


Ingo Molnar wrote:
that fixed the build but now we've got a boot crash with this config:

time.c: Detected 2010.304 MHz processor.
spurious 8259A interrupt: IRQ7.
BUG: unable to handle kernel NULL pointer dereference at 0000000000000000
IP: [<0000000000000000>]
PGD 0
Thread overran stack, or stack corrupted
Oops: 0010 [1] SMP
CPU 0

I don't know if this will fix this bug, but it's definitely a bugfix. It was trashing random pages by overwriting them with pagetables...

Subject: x86_64: memory mapping: don't trash large pmd mapping

Don't trash a large pmd's data when mapping physical memory.
This is a bugfix for "x86_64: adjust mapping of physical pagetables
to work with Xen".

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@xxxxxxxxxx>
---
arch/x86/mm/init_64.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

===================================================================
--- a/arch/x86/mm/init_64.c
+++ b/arch/x86/mm/init_64.c
@@ -311,7 +311,8 @@
}

if (pmd_val(*pmd)) {
- phys_pte_update(pmd, address, end);
+ if (!pmd_large(*pmd))
+ phys_pte_update(pmd, address, end);
continue;
}



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/