On 04/12/2014 14:14, Radim Krčmář wrote: > 2014-12-04 19:11+0800, Wanpeng Li: >> The section of CPUID(EAX=0xd, ECX=1) in the spec which commit >> f5c2290cd01e (KVM: cpuid: mask more bits in leaf 0xd and subleaves) >> mentioned is older than SDM. >> >> EBX: Bits 31-00: The size in bytes of the XSAVE area containing all >> states enabled by XCR0|IA32_XSS. > > Well, CPUs without XSAVES return 0 there, so we would emulate them > incorrectly ... (I don't mind much, it is reserved.) I agree it should stay to 0 if !XSAVES && !XSAVEC. For !XSAVEC && XSAVES there's no silicon, so we have some leeway. >> The the value of EBX should represent the size of XCR0 related XSAVE >> area since IA32_XSS is not used currently. > > True, but 'supported' is not the state of XCR0, just its supremum. > EBX should be set in kvm_update_cpuid(), like [3/4] does. > (We can safely drop [2/4].) Still, it's nice to be consistent and return a plausible value to userspace for KVM_GET_SUPPORTED_CPUID. 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