On Fri, Mar 23, 2012 at 03:49:27AM +0000, Liu, Jinsong wrote: > Eduardo Habkost wrote: > > [1] From Documentation/virtual/kvm/api.txt: > > > > "KVM_GET_SUPPORTED_CPUID > > [...] > > This ioctl returns x86 cpuid features which are supported by both the > > hardware and kvm. Userspace can use the information returned by this > > ioctl to construct cpuid information (for KVM_SET_CPUID2) that is > > consistent with hardware, kernel, and userspace capabilities, and with > > ^^^^^^^^^^^^^^^^^^^^^^^^^^ > > user requirements (for example, the user may wish to constrain cpuid > > to emulate older hardware, or for feature consistency across a > > cluster)." > > The fixbug patch is implemented by Jan and Avi, I reply per my understanding. No problem. I hope Jan or Avi can clarify this. > > I think for tsc deadline timer feature, KVM_CAP_TSC_DEADLINE_TIMER is > slightly better than KVM_GET_SUPPORTED_CPUID. If use > KVM_GET_SUPPORTED_CPUID, it means tsc deadline features bind to host > cpuid, while it fact it could be pure software emulated by kvm (though > currently it implemented as bound to hareware). For the sake of > extension, it choose KVM_CAP_TSC_DEADLINE_TIMER. There's no requirement for GET_SUPPORTED_CPUID to be a subset of the host CPU features. If KVM can completely emulate the feature by software, then it can return the feature on GET_SUPPORTED_CPUID even if the host CPU doesn't have the feature. That's the case for x2apic, for example (see commit 0d1de2d901f4ba0972a3886496a44fb1d3300dbd). -- Eduardo -- 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