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

Re: [Xen-devel] crash tool - problem with new Xen linear virtual mapped sparse p2m list

On 24/11/15 13:41, Andrew Cooper wrote:
> On 24/11/15 13:39, Jan Beulich wrote:
>>>>> On 24.11.15 at 13:57, <ptesarik@xxxxxxx> wrote:
>>> V Tue, 24 Nov 2015 10:35:03 +0000
>>> Andrew Cooper <andrew.cooper3@xxxxxxxxxx> napsÃno:
>>>> On 24/11/15 10:17, Petr Tesarik wrote:
>>>>> On Tue, 24 Nov 2015 10:09:01 +0000
>>>>> David Vrabel <david.vrabel@xxxxxxxxxx> wrote:
>>>>>> On 24/11/15 09:55, Malcolm Crossley wrote:
>>>>>>> On 24/11/15 08:59, Jan Beulich wrote:
>>>>>>>>>>> On 24.11.15 at 07:55, <JGross@xxxxxxxx> wrote:
>>>>>>>>> What about:
>>>>>>>>> 4) Instead of relying on the kernel maintained p2m list for m2p
>>>>>>>>>    conversion use the hypervisor maintained m2p list which should be
>>>>>>>>>    available in the dump as well. This is the way the alive kernel is
>>>>>>>>>    working, so mimic it during crash dump analysis.
>>>>>>>> I fully agree; I have to admit that looking at the p2m when doing page
>>>>>>>> table walks for a PV Dom0 (having all machine addresses in page table
>>>>>>>> entries) seems kind of backwards. (But I say this knowing nothing
>>>>>>>> about the tool.)
>>>>>>> I don't think we can reliably use the m2p for PV domains because
>>>>>>> PV domains don't always issue a m2p update hypercall when they change
>>>>>>> their p2m mapping.
>>>>>> This only applies to foreign pages which won't be very interesting to a
>>>>>> crash tool.
>>>>> True. I think the main reason crash hasn't done this is that it cannot
>>>>> find the hypervisor maintained m2p list. It should be sufficient to add
>>>>> some more fields to XEN_VMCOREINFO, so that crash can locate the
>>>>> mapping in the dump.
>>>> The M2P lives at an ABI-specified location in all virtual address spaces
>>>> for PV guests.
>>>> Either 0xF5800000 or 0xFFFF800000000000 depending on bitness.
>>> Hm, this is nice, but kind of chicken-and-egg problem. A system dump
>>> contains a snapshot of the machine's RAM. But the addresses you
>>> mentioned are virtual addresses. How do I translate them to physical
>>> addresses without an m2p mapping? I need at least the value of CR3 for
>>> that domain, and most likely a way to determine if it is a PV domain.
>> This ought to also be present in Xen's master page table
>> (idle_pg_table[]), and I suppose we can take for granted a symbol
>> table being available.
> The idle_pg_table is already present in the VMCORE notes.

Ah, except it is aliased to the name pgd_l4.


Xen-devel mailing list



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