Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753291AbbKXNlH (ORCPT ); Tue, 24 Nov 2015 08:41:07 -0500 Received: from smtp02.citrix.com ([66.165.176.63]:19421 "EHLO SMTP02.CITRIX.COM" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754457AbbKXNlE (ORCPT ); Tue, 24 Nov 2015 08:41:04 -0500 X-IronPort-AV: E=Sophos;i="5.20,338,1444694400"; d="scan'208";a="320371630" Message-ID: <565468ED.8060206@citrix.com> Date: Tue, 24 Nov 2015 13:41:01 +0000 From: Andrew Cooper User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.8.0 MIME-Version: 1.0 To: Jan Beulich , Petr Tesarik CC: Juergen Gross , , , DanielKiper , , , , David Vrabel , David Mair , , , "Malcolm Crossley" , Subject: Re: [Xen-devel] crash tool - problem with new Xen linear virtual mapped sparse p2m list References: <20151123201830.GN4768@olila.local.net-space.pl> <565409DA.90908@suse.com> <565434F102000078000B8424@prv-mh.provo.novell.com> <56543412.7090104@citrix.com> <5654373D.9070403@citrix.com> <20151124111725.4f45412e@hananiah.suse.cz> <56543D57.2030903@citrix.com> <20151124135701.1d75c901@hananiah.suse.cz> <5654769502000078000B86AA@prv-mh.provo.novell.com> In-Reply-To: <5654769502000078000B86AA@prv-mh.provo.novell.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit X-DLP: MIA1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2571 Lines: 53 On 24/11/15 13:39, Jan Beulich wrote: >>>> On 24.11.15 at 13:57, wrote: >> V Tue, 24 Nov 2015 10:35:03 +0000 >> Andrew Cooper napsáno: >> >>> On 24/11/15 10:17, Petr Tesarik wrote: >>>> On Tue, 24 Nov 2015 10:09:01 +0000 >>>> David Vrabel 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, 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. ~Andrew -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/