From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joe Laws Subject: Re: Adding PTE Flag during Page Fault Date: Sat, 14 Apr 2007 17:29:17 -0400 Message-ID: <462147AD.5070402@andrew.cmu.edu> References: <46207388.4090406@ttnet.net.tr> <46213E8E.7070703@andrew.cmu.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-9 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <46213E8E.7070703@andrew.cmu.edu> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Joe Laws Cc: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org Tried changing the l1e by doing this: l1e_write_atomic(&l1t[l1_table_offset(addr)],l1e); unmap_domain_page(l1t); Now it just causes Xen to crash and my computer to reboot. Unfortunately I can only see the output to the log by doing xm dmesg, which gets cleared on every reboot. Are there any efficient techniques to get the latest xm dmesg output to file before the system crashes? -Joe Joe Laws wrote: > I altered the method, "__spurious_page_fault", in "xen/arch/x86/traps.c" > to change a page to present when it is marked as not present. I am > attempting to do this using the "l1e_add_flags(l1e, _PAGE_PRESENT);" > definition call. I then set it to return EXCRET_fault_fixed, so the > trap should have the client retry what it was doing with the changes I > made. Unfortunately after it returns from the page fault to the user, > it immediately faults again on the same error at the same memory > location. This means my "l1e_add_flags(l1e, _PAGE_PRESENT)" is not > actually updating the correct location in memory or if it is, the > changes get discarded immediately. Does anyone who is familiar with the > page_fault trap code have any idea why my change to the PTE is not > sticking. I tried doing a TLB flush for the memory address, but the > same thing happens. My only other guess is that the l1e defined in the > function is just a copy of the actual table entry, so I need to look > back further where l1e was defined. > > Thanks, > Joe > > >