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...
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 <[email protected]>
Cc: xen-devel <[email protected]>
Cc: Stephen Tweedie <[email protected]>
Cc: Eduardo Habkost <[email protected]>
Cc: Mark McLoughlin <[email protected]>
Cc: Vegard Nossum <[email protected]>
Cc: Nick Piggin <[email protected]>
Cc: Yinghai Lu <[email protected]>
Signed-off-by: Ingo Molnar <[email protected]>
}
if (pmd_val(*pmd)) {
- phys_pte_update(pmd, address, end);
+ if (!pmd_large(*pmd))
+ phys_pte_update(pmd, address, end);
continue;
}