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/
Home Products Support Community News


[Xen-ia64-devel] RE: Question about paravirtualization

To: "Haavard Bjerke" <havard.bjerke@xxxxxxx>
Subject: [Xen-ia64-devel] RE: Question about paravirtualization
From: "Magenheimer, Dan (HP Labs Fort Collins)" <dan.magenheimer@xxxxxx>
Date: Mon, 6 Jun 2005 08:38:32 -0700
Cc: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Mon, 06 Jun 2005 15:37:37 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: DIscussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcVpQgvP1ntPi3BtROaK+uuValBfOgBatpnA
Thread-topic: Question about paravirtualization
The thash instruction is non-privileged but provides data
about the VHPT which is a privileged data structure.  In
Xen/ia64 there are multiple VHPTs: One** maintained
by Xen and one maintained by each guest.  If thash executes
unchanged, it returns data about Xen's VHPT which is
meaningless to the guest.  So the thash instruction
needs to be replaced by something which traps and can
be interpreted by Xen, which "emulates" the instruction
by returning data about the guest's VHPT.

> Will Xenlinux' 
> fault handlers ever be executed? Won't the hypervisor's IVT 
> be used instead?

If a TLB fault occurs while Xen is executing in Xen's virtual
address space, the Xen IVT handles it.  If a TLB fault
occurs when the guest is executing in the guest's virtual
address space, Xen "reflects" the TLB fault to the guest
and the guest's IVT handles it.

Does that answer your questions?


** There has been some discussion on this list about changing
the existing Xen VHPT to a per-guest VHPT but we will
ignore that for now.

> -----Original Message-----
> From: Haavard Bjerke [mailto:havard.bjerke@xxxxxxx] 
> Sent: Saturday, June 04, 2005 2:15 PM
> To: Magenheimer, Dan (HP Labs Fort Collins)
> Cc: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
> Subject: Question about paravirtualization
> I'm looking the Xenlinux paravirtualization, just for the 
> sake of studies, and a few questions came to mind.
> In ivt.S, the "thash" instructions are replaced with "tak" 
> instructions. I understand the need for paravirtualizing 
> thash instructions, but not in Xenlinux' IVT. Will Xenlinux' 
> fault handlers ever be executed? Won't the hypervisor's IVT 
> be used instead? Are these instructions paravirtualized just in case?
> And is the choice of the "tak" instruction just so that a 
> privop fault will be rised, or does it have a function?
> Thanks,
> Haavard

Xen-ia64-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-ia64-devel] RE: Question about paravirtualization, Magenheimer, Dan (HP Labs Fort Collins) <=