Re: Xen dom0 linux kernel 3.1 boot failure ptwr_emulate: could not get_page_from_l1e

From: Tobias Heinlein
Date: Mon Oct 31 2011 - 09:20:13 EST


2013pfoley <2013pfoley <at>> writes:
> [..]
> [ 0.000000] last_pfn = 0x63b5ef max_arch_pfn = 0x400000000
> [ 0.000000] last_pfn = 0xdf62d max_arch_pfn = 0x400000000
> [ 0.000000] found SMP MP-table at [ffff8800000f4f80] f4f80
> (XEN) mm.c:945:d0 Error getting mfn 100 (pfn 5555555555555555) from L1
> entry 8000000000100461 for l1e_owner=0, pg_owner=0
> (XEN) mm.c:5046:d0 ptwr_emulate: could not get_page_from_l1e()
> [ 0.000000] BUG: unable to handle kernel NULL pointer dereference at
> (null)
> [ 0.000000] IP: [<ffffffff81008a5a>] xen_set_pte+0x3a/0x1f0
> [ 0.000000] PGD 0
> [ 0.000000] Oops: 0003 [#1] SMP
> [ 0.000000] CPU 0
> [ 0.000000] Modules linked in:
> [ 0.000000]
> [ 0.000000] Pid: 0, comm: swapper Not tainted 3.1.0 #4 HP ProLiant
> DL380 G6

I get the exact same error here. Reading from your output, it seems we have the
same hardware; I have this problem on a HP ProLiant DL380 G6, too.

After a wild hint from a guy on ##xen to play around with the BIOS settings, I
was able to narrow down the problem to a setting called "MPS Table Mode". It is
set to "Full Table APIC" by default (with which the crash occurs), but when it's
set to "Disabled" Xen boots the kernel just fine.

FWIW, the help text of the setting is: "Multi Processor Specification (MPS)
Table / APIC Setting is used for interrupt routing. Certain unsupported
operating systems may require setting the MPS Table Mode to APIC Disabled."

(BTW, the kernel itself boots fine without Xen. So I'm not sure if this belongs
to the LKML at all.)

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at