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

Re: [Xen-devel] [PATCH] libxc: x86: ensure that the initial mapping fits into the guest's memory

>>> On 07.01.13 at 08:00, Jan Beulich wrote:
>>>> Ian Campbell <Ian.Campbell@xxxxxxxxxx> 01/04/13 5:53 PM >>>
>>libxc: x86: ensure that the initial mapping fits into the guest's memory
>>In particular we need to check that adding 512KB of slack and
>>rounding up to a 4MB boundary do not overflow the guest's memory
>>allocation. Otherwise we run off the end of the p2m when building the
>>guest's initial page tables and populate them with garbage.
> Sadly our testing found this to cause SLE11 SP2 PV guests to not start
> anymore (in its 4.1.x backported incarnation). I didn't get around yet to
> check whether in the (apparently trivial) backport I overlooked something;
> will do as soon as I get to the office.

Switching the added panic invocation to

            xc_dom_panic(dom->xch, XC_OUT_OF_MEMORY,
                         "%s: not enough memory for initial mapping (%#"PRIx64" 
> %#"PRIpfn")",
                         __FUNCTION__, try_virt_end >> PAGE_SHIFT_X86,

I see (with xend on 4.1.3)

xc: error: panic: xc_dom_x86.c:100: count_pgtables: not enough memory for 
initial mapping (0xffffffff81bff > 0x80000): Out of memory

Did this really work for you? The 4.1.3 xl doesn't really want to work
for me, so I can't directly cross check whether there's a behavioral
difference between the two, but looking at an older log the virtual
addresses reported for virt_alloc_end look similar. Afaict you need
to subtract dom->parms.virt_base from try_virt_end.


Xen-devel mailing list



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