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

Re: [Xen-devel] [PATCH, fixed] linux/x86: use sysenter/syscall for 32-bit apps on 64-bit Xen


  • To: Jan Beulich <jbeulich@xxxxxxxxxx>
  • From: Keir Fraser <Keir.Fraser@xxxxxxxxxxxx>
  • Date: Wed, 24 Oct 2007 15:12:16 +0100
  • Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
  • Delivery-date: Wed, 24 Oct 2007 07:13:11 -0700
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AcgWR+FkH8WyYII7Edy0vQAX8io7RQ==
  • Thread-topic: [Xen-devel] [PATCH, fixed] linux/x86: use sysenter/syscall for 32-bit apps on 64-bit Xen

On 24/10/07 15:12, "Jan Beulich" <jbeulich@xxxxxxxxxx> wrote:

>> However, in case (2) the i386 guest kernel unconditionally goes for
>> sysenter, and the hypervisor will accept this because CPUID has advertised
>> SEP. *But* AMD CPUs do not support sysenter except in legacy mode! The
>> correct thing to do is to use syscall. The hypervisor 32-on-64 compat code
>> would accept CALLBACKTYPE_syscall, but the Linux i386 code here doesn't
>> appear to make use of it. So I would imagine that the i386 kernel running on
>> AMD hardware would cause all user processes to crash when they SYSENTER.
> 
> I intentionally avoided adding syscall stuff to the 32-bit kernel, since that
> isn't
> there in the native kernel either (as it's not really usable on native).
> Therefore
> I'd suggest clearing SEP for pv32-on-64 guests in emulate_forced_invalid_op().

Okay.

 K.



_______________________________________________
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®.