On Thu, Jun 05, 2014 at 06:26:41PM +0200, Paolo Bonzini wrote: > Il 05/06/2014 18:24, Alexander Graf ha scritto: > > > >On 05.06.14 18:12, Eduardo Habkost wrote: > >>This implements GET_SUPPORTED_CPUID support using an explicit option > >>for it: > >>"allow-emulation". We don't want any emulated feature to be enabled by > >>accident, > >>so they will be enabled only if the user explicitly wants to allow them. > > > >So is this an all-or-nothing approach? I would really prefer to override > >individual bits. > > You can still disable them with "cpu foo,-movbe,allow-emulation". > > >Also, I don't think the line "emulated" is the right one to draw. We > >"emulate" SVM or VMX too, but still enable them by default as soon as we > >think they're ready enough. > > Well, I disagreed with the whole KVM_GET_EMULATED_CPUID concept for MOVBE > too for example. It seemed overengineered to me, sooner or later we might > graduate MOVBE out of KVM_GET_EMULATED_CPUID as well. Can you remind me what was your argument against KVM_GET_EMULATED_CPUID? Where do you want to move MOVBE to? Supported cpuid? That will make some CPU models unreasonably slow on hosts that do not support MOVBE natively. KVM is not in a busyness of instruction emulation, yes sometimes there is no choice (IO/real mode), sometimes emulating a feature is beneficial (x2apic) and sometimes guest cannot workaround missing feature, so by emulating it you allow guest functionality that is impossible otherwise (SVM/VMX). MOVBE (and MONITOR/MWAIT) is not in any of those categories. By forcing emulation upon unsuspecting guest you force it to use much slower alternative for what it can do by other means. > > However, for MONITOR/MWAIT it makes some sense. > > Paolo > -- > To unsubscribe from this list: send the line "unsubscribe kvm" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- Gleb. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html