WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] page fault handling in Xen

To: "Jonathan M. McCune" <jonmccune@xxxxxxx>
Subject: Re: [Xen-devel] page fault handling in Xen
From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
Date: Sat, 8 Oct 2005 23:34:45 +0100
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Sat, 08 Oct 2005 22:40:04 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <43484AB8.1010701@xxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <43484AB8.1010701@xxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx

On 8 Oct 2005, at 23:39, Jonathan M. McCune wrote:

We're curious about page fault handling in Xen-devel. In particular, during kernel boot-up, the kernel tests if the CPU "honours the WP bit". This causes a page fault with error code 3 (expected behavior). Does Xen still make a copy of the execution stack frame on the guest OS stack, as specified in the original "Xen and the Art of Virtualization" paper? There is a footnote here that suggests that using a pre-agreed shared memory location might be a better option. Has this change been implemented?

After the WP-test page fault is taken, what is supposed to happen from Xen's perspective on the return from the page fault handler? In normal linux, the exception handler changes its own return address (i.e., modifies the EIP register) to be the "fixup" address. Does this still happen with XenoLinux, or does the hypervisor get involved?

Everything works as on native, pretty much, except that the page-fault stack frame is extended by one word to contain the faulting linear address (because the guest cannot directly access %cr2).

 -- Keir


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>