This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] Crash on boot with 2.6.37-rc8-git3

On Thu, Jan 20, 2011 at 10:39:17PM +0000, M A Young wrote:
> On Thu, 20 Jan 2011, Konrad Rzeszutek Wilk wrote:
> >I think my math is off here. The reserve call is made on the
> >df659800 -> df66d7ff, that would be 20 pages of data. The last
> >PFN df66d is where it dies b/c there is no PTE entry set for it?
> >
> >What happens if you fudge the code so it allocates those pages to be
> >page aligned. So df65a000->df66e000 ? We skip this way the region
> >df659800->df659fff and start on a new PFN (and pte).
> I get (though the photo isn't clear in places) df659000->df66cfff
> and it crashes at find_range_array+0x4d/0x56 which traces back to
> the call of memblock_find_dma_reserve from setup_arch in
> arch/x86/kernel/setup.c . So it still crashes, but at a slightly
> later stage.

Ok, so we just pass the back so to say to the next user of that PFN.

We should find out why that PTE is not being setup.... And I think
this might be a missing entry in the MFN (thanks to Stefan Bader
finding a bug there).  Looking at your E820:

[    0.000000]  Xen: 0000000000100000 - 000000003b0e2000 (usable)

Your memory ends a 3b0e, which is not on a nice page boundary.
Can you try this patch (you will need to re-gigger as in 2.6.38-rc1
the p2m code moved out of xen/mmu.c to xen/p2m.c):


BTW, You are doing a great detective work here. Thanks for
being willing to dig in this.

Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>