[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] allow sysenter on 32bit guests running on vmx host
From: |
Andrea Arcangeli |
Subject: |
Re: [Qemu-devel] allow sysenter on 32bit guests running on vmx host |
Date: |
Wed, 24 Jun 2009 23:12:00 +0200 |
Hi Jamie,
thanks for review!
On Wed, Jun 24, 2009 at 06:29:34PM +0100, Jamie Lokier wrote:
> So your patch should make no difference to Linux guests. Did you
> check Linux behaviour? Does Windows ignore the vendor id?
Maybe I wasn't clear enough, this patch only makes a difference for
KVM. KVM switches the vendor id to Intel when run on vmx host. It
definitely makes a difference to linux guest, without this patch 32bit
linux run as guest on top of KVM has sep disabled in /proc/cpuinfo and
isn't using sysenter (just like windows, hence the skype crash). I
verified 32bit linux guest has sep enabled with this patch applied
when run on KVM on top of intel.
For AMD the change is a noop because it changes the model from Athlon
to Duron.
> Only on 64-bit host, of course.
>
> I see the "qemu32" version has model=3, stepping =3 already :-)
Yes, problem only happens on 64bit intel host running a 32bit guest
(windows skype crash or linux slowdown) on KVM.
> It makes sense to change the model number for AMD anyway, as AMD
> Athlons don't have the sep feature, even though this isn't a real CPU id.
No I don't think Duron has sep either... this should be noop for qemu
and a noop for KVM run on AMD.
> /* Intel sep feature is broken before family/model/stepping 6/3/3,
> and Windows guests wrongly ignore AMD vendor id when checking. */
I think we should specify this makes the cpu a duron on AMD and a PII
on intel and your comment removed that info but sure you're welcome to
change it ;).
Another approach is to switch model to 3 along with vendor_id in KVM
but because qemu is already using 6/3/3 when emulating a 32bit x86
hardware, I don't think this is simpler and more consistent.
- [Qemu-devel] allow sysenter on 32bit guests running on vmx host, Andrea Arcangeli, 2009/06/23
- Re: [Qemu-devel] allow sysenter on 32bit guests running on vmx host, Jamie Lokier, 2009/06/24
- Re: [Qemu-devel] allow sysenter on 32bit guests running on vmx host, Filip Navara, 2009/06/24
- Re: [Qemu-devel] allow sysenter on 32bit guests running on vmx host,
Andrea Arcangeli <=
- Re: [Qemu-devel] allow sysenter on 32bit guests running on vmx host, Jamie Lokier, 2009/06/24
- Re: [Qemu-devel] allow sysenter on 32bit guests running on vmx host, Andrea Arcangeli, 2009/06/24
- [Qemu-devel] KVMs default CPU type (was: allow sysenter on 32bit guests running on vmx host), Andre Przywara, 2009/06/25
- Re: [Qemu-devel] KVMs default CPU type, Avi Kivity, 2009/06/25
- Re: [Qemu-devel] KVMs default CPU type (was: allow sysenter on 32bit guests running on vmx host), Andrea Arcangeli, 2009/06/25
- Re: [Qemu-devel] KVMs default CPU type (was: allow sysenter on 32bit guests running on vmx host), Andrea Arcangeli, 2009/06/25
- Re: [Qemu-devel] allow sysenter on 32bit guests running on vmx host, Paul Brook, 2009/06/25
- Re: [Qemu-devel] allow sysenter on 32bit guests running on vmx host, Andrea Arcangeli, 2009/06/25
- Re: [Qemu-devel] allow sysenter on 32bit guests running on vmx host, Paul Brook, 2009/06/25
- Re: [Qemu-devel] allow sysenter on 32bit guests running on vmx host, Andrea Arcangeli, 2009/06/25