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


RE: [Xen-ia64-devel] [PATCH] unify vtlb and vhpt

To: "Kouya Shimura" <kouya@xxxxxxxxxxxxxx>, <xen-ia64-devel@xxxxxxxxxxxxxxxxxxx>
Subject: RE: [Xen-ia64-devel] [PATCH] unify vtlb and vhpt
From: "Dong, Eddie" <eddie.dong@xxxxxxxxx>
Date: Fri, 29 Feb 2008 01:14:40 +0800
Delivery-date: Thu, 28 Feb 2008 09:18:18 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <7kablltryq.fsf@xxxxxxxxxxxxxxxxxxxxxxxxxx>
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>
References: <7kablltryq.fsf@xxxxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: Ach54+5eKSVn/3L4TgCWsTwZmLBCJwARcHdQ
Thread-topic: [Xen-ia64-devel] [PATCH] unify vtlb and vhpt
Kouya Shimura wrote:
> Hi,
> Currently a HVM domain has vtlb and vhpt individually.
> This patch unifies them. A vtlb entry is recorded in
> vhpt collision chain area.

Mmmm, I am not sure if it is correct in theory. If we put
vTLB in VHPT, which means hash/tag can be used to
uniquely identify a vTLB. This require (original design of) VHPT HW
to rely on region size. If the region size changed, the whole
VHPT need to be purged (at least for that region), other wise
a VHPT entry could be interpreted as different translation.

That means a region size change need to purge vTR in VHPT
table. Do we still need additional data structure to keep those

Also if regions size is for example 32K, and we have vTC1 & vTC2
whose va is within 32K page (offset 0 & 16K), but size is only 16KB. 
Putting them in VHPT makes those 2 entries have same hash/tag
since rid/vpn is same. Can this be handled?

> - improve flexibility. currently vtlb size is fixed but some
>   applications like ie32el consume much vtlb.
> - utilize vhpt collision chain area. it looks sparse.
> - reduce TLB miss for access to a vtlb entry. since vhpt is
>   mapped on a TR.
> - speedup ptc.e emulation slightly.
> On the other hand, there would be a slight overhead in
> searching a TLB entry.
> In my testing, any performance degradation can't be seen.
Thanks, eddie

Xen-ia64-devel mailing list