[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Linux 4.4 boot crash on xen 4.5.3 with dom0_mem == max



On 17/05/16 06:28, Ed Swierk wrote:
> I'm trying to figure out a crash when booting a Linux 4.4 dom0 on
> a recent stable xen 4.5. I'm capping the dom0 memory by setting
> dom0_mem=18432M,max:18432M on the xen command line, and the kernel
> config has CONFIG_XEN_BALLOON unset.
> 
> The crash seems dependent on the contents of the e820 table; identical
> hardware with a different BIOS version does not crash.
> 
> I instrumented various functions arch/x86/xen/setup.c, and isolated
> the problem to the final call to xen_del_extra_mem() in
> xen_remap_memory(). The BUG_ON(n_pfns > size_r) assertion is triggered
> in the "Start of region" block.

Hmm, weird.

Could you please add some more instrumentation? I'd be interested in all
calls to xen_add_extra_mem() and xen_del_extra_mem() with the parameters
Something like:

printk("%s(%lx, %lx)\n", __func__, start_pfn, n_pfns);

at the beginning of both functions.

This should help in finding the bug.

...

> [    0.000000] Xen: [mem 0x0000000100000000-0x0000000505de9fff] usable
...
> [    0.000000] final xen_del_extra_mem pfn_s=0x480000 len=0x85deb
> [    0.000000] xen_del_extra_mem i=0
> [    0.000000] xen_del_extra_mem i=0 start_r=0x480000 size_r=0x85dea 
> n_pfns=0x85deb
...
> Any idea what is causing the BUG_ON()?

There seems to be an off by one error. n_pfns on the last call is
wrong, IMO.

> (Incidentally, such assertions would be far easier to debug if
> BUG_ON() printed clues like the condition, line number, and filename,
> before crashing.)

Indeed.


Juergen

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.