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

Re: [Xen-devel] 3.1/2 live migration panic

On 17/1/08 02:42, "John Levon" <levon@xxxxxxxxxxxxxxxxx> wrote:

> On Wed, Jan 16, 2008 at 11:01:21PM +0000, Keir Fraser wrote:
> (I'm back on 3.1 bits here)
> 1894     sl2e = shadow_get_and_create_l2e(v, gw, &sl2mfn, ft);
> 1895     if ( sl2e == NULL ) return NULL;
> 1896     /* Install the sl1 in the l2e if it wasn't there or if we need to
> 1897      * re-do it to fix a PSE dirty bit. */
> 1898     if ( shadow_l2e_get_flags(*sl2e) & _PAGE_PRESENT
> So sl2e is non-zero, but bogus:
>> ffff81c0ffc07c48::dump
>                     0 1 2 3  4 5 6 7 \/ 9 a b  c d e f  01234567v9abcdef
> mdb: failed to read data at 0xffff81c0ffc07c48: no mapping for address
> This pointer is a constant though (right?)

What do you mean by 'a constant'? It's a pointer into the guest linear
pagetable, which I suppose is what we expect, and for some reason there is
no PTE at that location to be read. Clearly a higher-level page directory is
missing. Possibly shadow code has got confused and thought a page directory
was present when it wasn't, or perhaps the page directory went away (and/or
was in the process of disappearing from TLBs) as the shadow fault handler
went about its business. I'm sure Tim will have some insights. :-)

 -- Keir

Xen-devel mailing list



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