On 25/11/2014 11:13, Wanpeng Li wrote: > Hi Paolo, > On Mon, Nov 24, 2014 at 05:43:32PM +0100, Paolo Bonzini wrote: >> The first patch ensures that XSAVES is not exposed in the guest until >> we emulate MSR_IA32_XSS. The second exports XSAVE data in the correct >> format. >> >> I tested these on a non-XSAVES system so they should not be completely >> broken, but I need some help. I am not even sure which XSAVE states >> are _not_ enabled, and thus compacted, in Linux. >> >> Note that these patches do not add support for XSAVES in the guest yet, >> since MSR_IA32_XSS is not emulated. >> >> If they fix the bug Nadav reported, I'll add Reported-by and commit. > > I test this patchset w/ your "KVM: x86: export get_xsave_addr" patch on > Skylake and guest hang during boot. The guest screen show "Probing EDD > (edd=off to disable)... ok", and no more dump. Anything in dmesg? Can you try this patch on top? diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index 373b0ab9a32e..ca26681455c2 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -6955,6 +6955,9 @@ int fx_init(struct kvm_vcpu *vcpu) return err; fpu_finit(&vcpu->arch.guest_fpu); + if (cpu_has_xsaves) + vcpu->arch.guest_fpu.state->xsave.xsave_hdr.xcomp_bv = + host_xcr0 | XSTATE_COMPACTION_ENABLED; /* * Ensure guest xcr0 is valid for loading 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