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] getting a 32-bit mfn from a 32-on-64 HVM guest

To: Dan Magenheimer <dan.magenheimer@xxxxxxxxxx>, "Xen-Devel (xen-devel@xxxxxxxxxxxxxxxxxxx)" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] getting a 32-bit mfn from a 32-on-64 HVM guest
From: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Date: Sun, 20 Jun 2010 18:56:25 +0100
Cc:
Delivery-date: Sun, 20 Jun 2010 10:57:41 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <ab0e05c1-08c2-403d-92af-4528c6dbd982@default>
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/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcsQoIvwMcPYxx80QgK5l/UDiiLObAAAVpiB
Thread-topic: [Xen-devel] getting a 32-bit mfn from a 32-on-64 HVM guest
User-agent: Microsoft-Entourage/12.24.0.100205
On 20/06/2010 18:45, "Dan Magenheimer" <dan.magenheimer@xxxxxxxxxx> wrote:

> What is the "proper" way to ensure that the cmfn
> is properly truncated for a 32-bit HVM guest
> without truncating it for a 64-bit guest?  I
> have used is_pv_32on64_vcpu()... is there an equivalent
> for HVM? Or do I need to do something entirely different?

See the x86_64 version of arch/x86/hvm/hvm.c:hvm_do_hypercall() which uses
hvm_guest_x86_mode() to get the 'bitness' of the HVM-guest caller. You
should do the same, probably. Or even have a compat shim around your
hypercall same as others which have differences between 32- and 64-bit
struct layouts, and have the dispatch tables in hvm.c (HVM callers) and
entry.S (PV callers) dispatch to the correct entry point for the bitness of
the caller.

 -- Keir



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

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