From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Dan Magenheimer" Subject: RE: Early test for 32- vs 64-bit hvm domain? Date: Tue, 29 Jan 2008 17:34:38 -0700 Message-ID: <20080129173438062.00000002384@djm-pc> References: <20080130001134.GM4386@implementation> Reply-To: "dan.magenheimer@oracle.com" Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <20080130001134.GM4386@implementation> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Samuel Thibault Cc: "xen-devel@lists.xensource.com" List-Id: xen-devel@lists.xenproject.org > Dan Magenheimer, le Tue 29 Jan 2008 17:01:22 -0700, a =E9crit : > > What is the proper way to test to see if an hvm domain is destined > > to be x86 vs x86_64 whilst still early in its initialization in the > > hypervisor, e.g. in hvm_vcpu_initialise(v) or = > hvm_domain_initialise(d)? > > Is this information pased down from hvmloader or does it get > > discovered somehow? Or maybe it is not possible to determine > > until a vcpu actually starts executing? > = > As long as e.g. Linux has not started (i.e. during bios and grub for > instance), you can't know whether that will be a 64bit Linux = > or a 32bit > Linux. That's what I was afraid of... Then what is the earliest point in the execution of an x86_64 domain/vcpu in *xen* where hvm_long_mode_enabled(v) will work properly? E.g. in Linux/x86_64 is long mode set early in __start? And is this done via a hypercall or an emulated instruction? Thanks, Dan