[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-devel] VMX check in /xen/arch/x86/domain.c is invalid onx86-64 (at least AMD)


  • To: "Jerone Young" <jyoung5@xxxxxxxxxx>, "xen-devel" <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • From: "Nakajima, Jun" <jun.nakajima@xxxxxxxxx>
  • Date: Wed, 11 May 2005 22:28:23 -0700
  • Delivery-date: Thu, 12 May 2005 05:28:00 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AcVWpr4rdOhrKka8QdGbHxPvD0QikgAC11ww
  • Thread-topic: [Xen-devel] VMX check in /xen/arch/x86/domain.c is invalid onx86-64 (at least AMD)

Jerone Young wrote:
> if (!(c->flags & ECF_VMX_GUEST))
>         if ( ((c->cpu_ctxt.cs & 3) == 0) ||
>              ((c->cpu_ctxt.ss & 3) == 0) )
>                 return -EINVAL;
> 
> This check in /xen/arch/x86/domain.c (line 394) is invalid for AMD
> x86-64 as this field 1<<1 is a reserved field in the rflags (name for
> 64bit eflags) that reads as 1. This can be found in the AMD x86-64
> Programming manual vol 2 on page 65. Below is the code, I'm not sure
> how to put an ifdef around since I'm not sure if Intel's EMT64 with
> VMX cpus have the same rflag reserved (which if this check is correct
> they do)? This helps break x86-64 building domU domains.

This c-flags has nothing to do with the machine architecture, but it's
just a software field for the domain builder to specify the type of the
domain (i.e. VMX or not, for example). The rflags is in
execution_context_t.

Jun

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.