From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Byrne Subject: Re: Live migration leaves page tables read-only? Date: Thu, 30 Nov 2006 15:36:21 -0800 Message-ID: <456F6AF5.2090005@hp.com> References: <456CD0A5.1060701@hp.com> <456CD2DC.2020201@hp.com> <8A87A9A84C201449A0C56B728ACF491E01FA12@liverpoolst.ad.cl.cam.ac.uk> <456CF5F9.7070009@hp.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <456CF5F9.7070009@hp.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: ian.pratt@cl.cam.ac.uk Cc: Ian Pratt , xen-devel List-Id: xen-devel@lists.xenproject.org John Byrne wrote: > Ian Pratt wrote: >>> I forgot to mention that a very simple test case I wrote using shared >>> memory and the mprotect call didn't fail. So, the only test case I >> have >>> at the moment is to run SAP. >> >> What happens if you use non-live relo? > > I thought I had tested that way back at the beginning without seeing the > problem, but I must not have, because I just retested it to be sure and > it died the same way. (Now I am truly confused and I need to go back and > re-examine some of my earlier experiments.) > After redoing some of my tests and understanding more about how Xen handles page tables, I started looking at ptwr_do_page_fault() and put debugging code into it. (On Xen 3.0.3 x86-64.) The fixup is failing in x86_emulate_memop(). Building a debug version of Xen provided some additional information (the final line is from my debugging, after the ":" is domid, addr, pte, pte flags, type_info, page owner, domain): (XEN) DOM1: (file=mm.c, line=1682) Bad type (saw 0000000028000001 != exp 00000000e0000000) for mfn c8de3 (pfn 12491) (XEN) DOM1: (file=mm.c, line=606) Error getting mfn c8de3 (pfn 12491) from L1 entry 00000000c8de3167 for dom1 (XEN) DOM1: (file=mm.c, line=1682) Bad type (saw 0000000028000001 != exp 00000000e0000000) for mfn c8de3 (pfn 12491) (XEN) DOM1: (file=mm.c, line=606) Error getting mfn c8de3 (pfn 12491) from L1 entry 00000000c8de3067 for dom1 (XEN) DOM1: (file=mm.c, line=3120) ptwr_emulate: could not get_page_from_l1e() (XEN) ptwr_do_page_fault,3253:1 ffff880011065bc0 80100000ca20f065 801065 28000001 ffff830000fe7080 ffff830000fe7080 I'll keep following this down, but any help would be appreciated. Thanks, John Byrne