Just to interject here... all this is about host kernel vs userspace, correct? I.e. nothing that affects the guest. I assume that the guest sees CPUID and that is what is supported. Borislav Petkov <bp@xxxxxxxxx> wrote: >On Sun, Apr 14, 2013 at 10:41:07AM +0300, Gleb Natapov wrote: >> Currently userspace assumes that that cpuid configuration returned by >> KVM_GET_SUPPORTED_CPUID is the optimal one. What we want here is a >way >> for KVM to tell userspace that it can emulate movbe though it is not >> optimal. > >Ok, I don't understand. > >You want to tell userspace: "yes, we do support a hw feature but we >emulate it."? > >> Userspace alone cannot figure it out. It can check host's cpuid >> directly and assume that if cpuid bit is not present on the host cpu, >> but reported as supported by KVM then it is emulated by KVM and this >is >> not optimal, but sometimes emulation is actually desirable (x2apic), >so >> such assumption is not always correct. > >Right, and this is what we have, AFAICT. And if userspace does that >what >you exemplify above, you get exactly that - a feature bit not set in >CPUID but KVM reporting it set means, it is emulated. There's no room >for other interpretations here. Which probably means also not optimal >because it is not done in hw. > >Or, do you want to have a way to say with KVM_GET_SUPPORTED_CPUID that >"the features I'm reporting to you are those - a subset of them are not >optimally supported because I'm emulating them." > >Am I close? > >Thanks. -- Sent from my mobile phone. Please excuse brevity and lack of formatting. -- 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